最新の Drupal 6 および Services 3.x モジュールを使用し、REST サーバーが構成されています。「test」という新しいコンテンツ タイプを作成しました。必要な cck フィールドはありません。body フィールドは削除されています。これと同じ方法で REST サービスをテストする例をいくつか見てきました。
VBA から GET および DELETE ノードに取得できますが、POST または PUT (作成または更新) はできません。これに関する数十のページと質問を読んだことがありますが、REST サーバーの構成は適切で、VBA の提出は適切なようです。
Dim MyURL as String
MyURL = "http://example.com/rest/node?node[type]=test&node[title]=newtestnode"
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
With objHTTP
.Open "POST", MyURL, False
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.send (MyURL)
End With
POST および PUT で返されたステータスは「Unauthorized: Access denied for user 0 "anonymous", response is null. 拒否されたエラーはサービス モジュール内から発生しています。
匿名がブラウザ経由でこのタイプを作成できることを確認しました。また、VBA から DELETE できるので、パーマとセットアップが適切であると確信しています。PHP、Perl、Java、Ruby からは多くの例を見つけましたが、Excel VBA からは何も見つかりませんでした。これを別のサーバーと drupal Web サイトでもテストしましたが、すべて同じ結果でした。サービスの問題キューには、このようなものはありません。
できませんか?非常にイライラします!