emberJSアプリケーションで作業中のサーバ(google POSTMANでチェック)への基本リクエストを作成しようとしています。しかし、私はそれを試して、私はHTTP 404エラーを取得します。次に、エラーを調べて、クライアント側からの元のリクエストがGETリクエストではなくOPTIONリクエストであることを確認しました。また、私はAccept
、2つのヘッダーを設定し、Content-Type
application/json
すると検査する場合、検査員は、これらのヘッダを印刷しました:emberJS JSONAPIアダプタがGETリクエストの代わりにOPTIONを送信します
Accept:*/*
Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8
Access-Control-Request-Headers:accept, content-type
Access-Control-Request-Method:GET
Connection:keep-alive
Host:frontend.com
Origin:http://localhost:4200
Referer:http://localhost:4200/restaurant
User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.110 Safari/537.36
今ここアダプタ
//Application.js adapter:
import DS from 'ember-data';
export default DS.JSONAPIadapter.extend({
host: 'http://server.com',
namespace: 'v1',
headers: {
"Accept": "application/json",
"Content-Type": "application/json"
}
});
があり、これをオンにするいくつかの方法がありますOPTIONをオフにするか、回避策がありますか?私はemberがそうしなければならない主なものの1つであると考えられているので、emberはとてもバグだとは思わなかった。要求を送る。 助けが必要です。
あなたのコメントは、Emberがバグであると思われることを示していますか?クロスドメインリクエストの仕組みに精通していますか? –
あなたはこのトピックについて学ぶことができます(それはブラウザとは何の関係もなく、ブラウザーが動作する方法です):https://developer.mozilla(クライアントコードと 'host'プロパティーが異なるホストであると仮定します) .org/en-US/docs/Web/HTTP/Access_control_CORS –
この問題のために私はあまりにもストレスが強かったので、エバーはバグだったと思った。私はCORSに全く慣れていませんでした。今私はバックエンドのCORSが問題を解決できるようにしようとします。ありがとう:) – xpg94