前提・実現したいこと
ReactからTwitterAPIを使用してタイムライン情報を取得したいのですが、
CORS認証で引っかかっているようです。
Reactを使用せずにTypeScript単体でコマンド上では動いたのですが、
そのときはエラー回避のためにtsconfig.jsonで"module": "commonjs"を使用していました。
Reactでは"module": "esnext"になっているため共存の仕方がわかりません。
使用しているライブラリは以下のものを使用しています。
twitter
@types/twitter
発生している問題・エラーメッセージ
Access to fetch at 'https://api.twitter.com/1.1/statuses/home_timeline.json?count=50' from origin 'http://127.0.0.1:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
該当のソースコード(.tsx)
TypeScript
1useEffect(() => { 2 const load = async (): Promise<void> => { 3 setIsLoading(true); 4 5 6 try { 7 await client.get('statuses/home_timeline', params, function(error, tweetsData, response) { 8 if (!error) { 9 console.log(tweetsData); 10 setDatas(tweetsData); 11 12 } 13 }) 14 15 } catch (err) { 16 throw new Error(`error`); 17 } finally { 18 setIsLoading(false); 19 } 20 }; 21 22 void load(); 23 }, []);
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。