ポート8080で実行されているCORSヘッダーをサポートするExpress.jsサーバーがあり、iPhone 5のReact NativeアプリケーションからそのポートへのHTTP要求を作成しようとしています。CORS:localhostへのhttp要求が反応ネイティブで拒否されました
import request from 'superagent'
const getMarkers = (url, callback) => {
request
.get(url)
.set('Accept', 'application/json')
.end(callback)
}
getMarkers('localhost:8080/markers, this.handleMarkers)
そして、私のエクスプレスミドルウェアは、次のようになります:
[Error: Request has been terminated
Possible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.]
要求は次のようになります。
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*')
res.header('Access-Control-Allow-Headers',
'Origin, X-Requested-With, Content-Type, Accept')
next()
})
が、次のエラーを取得しています
私は自分のプロジェクトに「任意の負荷」を許可しました。
これらのリクエストは、iosシミュレータを使用するとうまく動作します。また、これらのリクエストは、ngrokをダウンロードし、エクスプレスサーバーディレクトリで実行し、ngrokが提供するhttpsアドレスにクライアント側のリクエストを行うときにうまく動作します。
質問:どのようにngrokのようなものを使用せずにこれらの要求を容易にすることができますか?可能であれば、httpとlocalhostだけを使ってすばやく開発できるようにしたいと思います。私は他の人がこの質問に提供できる洞察に非常に感謝しています!私はこれがあなたの問題であると考えてい
ありがとう@MattAft。私は混乱している - 私は設定が任意の負荷を可能にすると私が望むものであるHTTP要求をすることができるようになると思った。私は間違っていますか? – duhaime
ええ、あなたはそれを可能にするためにオンにしたいと思うでしょう。しかし、あなたはそれが働きたいドメインを設定しなければなりません。私の答えは、それを動作させるために置いたもので更新してください。 –
素晴らしいです、ありがとうございます。私は ' localhost 'と同じものを持っていますが、私はまだlocalhostに対してhttpリクエストを行うことができません。他に何を試してみるか知っていますか? –
duhaime