如何使用REST从Excel VBA发布Drupal节点

时间:2012-04-13 17:18:18

标签: rest excel-vba vba excel

使用最新的Drupal 6和Services 3.x模块,配置REST服务器。创建了一个名为'test,no required cck fields的新内容类型,删除了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上返回的状态为“未授权:用户0拒绝访问”匿名“,响应为空。拒绝错误源自服务模块内部。

我已验证匿名可以通过浏览器创建此类型,我可以从VBA删除,所以我确定我的权限和设置是有序的。我发现了许多来自PHP,Perl,Java,Ruby的示例,但没有来自Excel VBA。我还在另一台服务器和drupal网站上测试了这一点,结果相同。服务问题队列没有这样的。

不能这样做吗?很沮丧!

0 个答案:

没有答案