POST Drupal 8 Core RESTを使用してノードを作成するリクエストを送信する際に問題が発生しました。ここで私が数回実行した手順は次のとおりです。これらに注意してください。手順は実際に動作する例を作成するためのものですが、現時点ではセキュリティへの影響については心配していません。
[送信]を押した後、ノードが正常に作成された場合、200ではなく201であるはずの次のメッセージが表示されます。 RESTパーツが機能していると思いますが、ノードを作成するPOSTを取得する方法を理解できていないようです。
Drupal 8 RESTへのPOSTリクエストの作成に関するドキュメントが見つかりません。Drupalが正常に解析できるように、これらのリクエストを作成する方法についての洞察は非常に役立ちます。
Drupal.orgの(同一の)問題に関する解決策を投稿しました: https://www.drupal.org/node/2472451#comment-9903259 コメントに添付されているDev HTTPクライアントのスクリーンショットも参照してください。
基本的に、あなたの例にはいくつかの問題があります:
まだたくさんの403 Forbidden
エラーここに私の全体的な解決策を要約します(Drupal 8.0.1):
すべてのコアWebサービスモジュール(HAL、HTTP基本認証、RESTful Webサービス、シリアル化)を有効にする
RESTful Webサービスの関連する権限を有効にし、関連するノードを作成します。
GET http://your-drupal8/rest/session/token
POST http://your-drupal8/entity/node?_format=hal+json
POSTのURLは
/entity/node
のではなく/node
Authorization: Basic QWRt...
X-CSRF-Token: zCf...
{
"title": [
{ "value": "atest2" }
],
"type": [
{ "target_id": "article" }
],
"_links": {
"type": { "href": "http://your-drupal8/rest/type/node/article" }
}
}
オリジナルのモジュールをフォークして、このバグとプルリクエストを修正しました。このブランチを受け入れてほしい。 https://github.com/setali/drupal_cors からダウンロードできます。