Angular2でhttp putを使用できない理由を理解できません。 Angular2 Http PUTが間違ったRequestMethodを返す
私は、HTTPポストをやっているときは、それが正しいリクエストメソッドを与える
:、私が使用している場合、HTTP置く:
:それはリクエストメソッドなどのオプションを与えます私はこれが何であるかを意味しましたか?ここで
は、私はポストのため使用している方法である:ここでは
let headers = new Headers({ 'Content-Type': 'application/x-www-form-urlencoded' });
let options = new RequestOptions({ headers: headers });
var body = 'amount=' + 12;
this.http.post(this.host + '/orders', body, options)
.map(res => res.json())
.subscribe(data => {
resolve('success')
});
は、私がPUTのために使用している方法です。
let headers = new Headers({ 'Content-Type': 'application/x-www-form-urlencoded' });
let options = new RequestOptions({ headers: headers });
let body = 'amount=' + 12;
this.http.put(this.host + '/orders/1', body, options)
.map(res => res.json())
.subscribe(data => {
resolve('success')
})
しかし、私はまた、私のサーバーでは、それが正常に動作し、ポストマンと更新方法でテストし、私はこれらのすべてを有効にしました:res.setHeader( 'Access-Control-Allow-Origin'、 '*'); res.setHeader( 'アクセス制御を許可するメソッド'、 'GET、POST、OPTIONS、PUT、PATCH、DELETE'); res.setHeader( 'アクセス制御の許可ヘッダー'、 'X-Requested-With、content-type'); res.setHeader( 'アクセス制御許可の認証情報'、true)。 – Vicheanak
はい、郵便番号はChromeのプラグインを使用しているため、制限を少なくすることができます。これはサーバー側のCORSヘッダーに最適です。 CORSのプリフライトリクエストに関してはそれだけでは不十分です。明示的なアプリケーションでは、 'cors'モジュール(https://github.com/expressjs/cors#enabling-cors-pre-flight)(グローバルにまたはリクエストごとに)を使用する必要があります。 –