私のスクリプトを:作業を行うものとする角度であればマッチ
updateTask(task:Task){
const body = task;
var headers = new HttpHeaders();
headers.set('Content-Type', 'application/javascript');
headers.set('If-Match', task.etag);
return this.httpc.put(this.resources+'/'+task.id, body, { headers: headers });
}
誰もがそれを見てもらえて、私はここで間違った何かをしたなら、私にしてください教えてください。私は初心者です:S(バックエンドは私ではないので私はあなたと分かち合えません:/)
httpcはHttpClientです:) あなたの時間と答えを前もってありがとう! ^^。
編集1:
レスポンス> { "エラー": "ヘッダ見つからないか無効です一致した場合、"}
EDIT2:
要求ヘッダー
PUT /app/data/schedule/tasks/42615 HTTP/1.1
Host: localhost:3000
Connection: keep-alive
Content-Length: 438
Accept: application/json, text/plain, */*
Origin: http://localhost:3000
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36
Content-Type: application/json
Referer: http://localhost:3000/portal/
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Cookie: sid=f5eb691a56bfa7b6db05083023c5f4caf044db47c2f29f644bc80d7bb7dcf1f3
エラーは何ですか? 'this.resources'とは何ですか? 'タスク 'を含むものJavaScriptスクリプトですか?私たちがもっと情報を持っていなければ、あなたを助けるのは難しいです。 [最小限の完全で検証可能な例](https://stackoverflow.com/help/mcve)を提供すると考えるべきです。また、ブラウザーで残りのクライアントを使用してクエリ(この場合はput)をテストしてみてください。たとえば、URLの形式が「 – JTejedor
」の場合、私はすでに角をつけずにテストしています。 If-Matchの部分をどこで設定するのか分かりません。これはサービスの機能ですが、タスクは何か、またはURLが正しいかどうかが重要でないため、問題はありません。私はタスクの数instedを言うことができるように簡単な番号を置くことができますが、これは問題自体を変更することはありません。私はIf-Match部分を正しく設定しなかったと思います。 (task.etagは "3a62ca468a0c07d6040b30a5a263a19a"のような単純なエタグ文字列です)。私はこれではっきりしない場合は申し訳ありません:| If-Matchフィールドを設定する必要があるときに、角度付きのputに関するQや例は見つかりませんでした。 –
あなたの問題は 'task.etag'に関連しています。これは、値がnullか無効であるためです。 'If-Match'ヘッダーの形式が適切で、適切な値であるかどうかを確認します。 – JTejedor