问题标签 [drupal-services]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
614 浏览

json - 服务模块drupal的json rpc客户端

我正在尝试创建一个 json rpc 客户端来访问钛的服务模块提供的 drupal 服务。

此代码结果显示“方法无效”。

我认为数据的解析格式不正确。请帮助解决这个问题。

0 投票
1 回答
782 浏览

iphone - 从 iPhone 向 Drupal REST 服务发送多个参数

我正在尝试访问需要多个参数的 Drupal 服务。方法是views.get,我使用的服务器是REST 6.x-2.0-beta3。我正在从服务器中检索 0 或 1 个参数的数据,没有任何问题。但是,第一个参数之后的任何参数都被简单地忽略。我已经在 Drupal 站点上测试了这个视图,它正确地限制了每个传递的参数的结果。

我得出的结论是,我的问题一定是格式问题,但我已经尝试了几乎所有我能想到的东西,更不用说我在谷歌搜索时发现的十几个建议了。我的代码如下:

我努力了:

和其他几个沿着这条脉络。有谁知道这样做的正确方法?

0 投票
1 回答
736 浏览

drupal - 无效的 API 密钥

我正在研究使用 Drupal 6 中的服务模块从一些 JSON 格式的自定义视图中获取数据。我在http://drupal.org/node/308629上关注了一篇文章并创建了这个项目的 vb 版本(推送到https://sharpred@github.com/sharpred/ConsoleApplicationDrupal.git

第一次运行我的代码时,我得到“无效的 API 密钥”,随后的运行返回“令牌之前已用于请求。使用另一个 nonce 密钥重试”。第二个错误是有点虚假的 IMO,因为我的代码每次运行时都会创建一个新的随机随机数。

我还注意到第一次运行在 services_timestamp_nonce 表中创建了一个条目,其中仅包含时间戳,但不包含 nonce 或域值。如果我删除这条记录,它会回到“无效的 api 密钥”消息。

该代码未经身份验证即可工作,并且来自站点上 /admin/build/services/browse/views.get 的方法调用也可以正常工作。

关于为什么这不起作用的任何想法?

搜索谷歌,“无效 api 密钥”的最常见来源似乎是使用的时间戳错误或 api 密钥与创建哈希时使用的域不匹配。据我所知,在我的情况下两者都不是真的。我在https://gist.github.com/1151222创建了用于创建时间戳和哈希的代码要点

任何人都可以帮助使这个过程发挥作用吗?

0 投票
1 回答
1825 浏览

drupal-7 - Drupal 定制服务(服务模块)

我已经注册了一个服务,当我调用它时,调用本身可以工作,但返回的数据是“假的”。我不知道我做错了什么,也找不到有关它的信息。谁能帮帮我?

我在其他地方使用此代码来调用它:

0 投票
2 回答
4116 浏览

drupal - 如何使用服务模块在 Drupal Commerce 中获取产品价格?

我安装了服务模块和 REST 服务器来获取产品列表和详细信息。我只能获取产品展示节点和产品id,

但是如何从 Drupal Commerce 获取产品价格和可用性信息。

所有节点列表(包括产品展示节点)

http://drupalcommerce.myappdemo.com/services/node

获取单品展示节点 http://drupalcommerce.myappdemo.com/services/node/37

但它确实给出了产品 ID,但没有给出产品价格。

请给我一个想法如何得到一个。

0 投票
1 回答
868 浏览

rest - 如何在对服务模块的单个请求中获取 Drupal 节点字段的完整 URI(即不是“流包装”)?

前言

我正在构建一个 Drupal 站点,它兼作用 Flex 编写的移动应用程序的内容服务端点。CMS 负责存储许多项目,这些项目除其他字段外,还有一个表示节点的图像字段(如电影封面或小型产品镜头)。我正在使用服务模块和 REST 服务将此内容作为 JSON 提供给移动应用程序。

问题

我注意到 Drupal(或者可能是服务本身)限制了每个请求返回的数据量,似乎是基于请求的粒度。例如,节点索引请求仅返回每个节点或多或少相同的字段:nid、标题、状态等。而对单个节点的请求还返回自定义字段,包括我的图像字段。

我的问题是图像字段的 URI 值是“streamwrapped”(或者我在研究这个问题时看到过它),所以它被简单地列为public://images/node_image.jpg. 为了获得完整的 URI,我必须请求文件。这意味着对于移动应用程序中的索引页面,我必须发出1 + (n * 2)请求以获取有关给定节点的完整数据,以及n获取每个节点显示的图像的请求。对于给定的节点页面,最多n为 8 个,这意味着每页节点最多可以向服务器发出 25 个请求。

这是常见的/被接受的,还是有一种更简单/更快/不那么繁琐的方法可以在更少的请求中访问这些数据?

旁注:我注意到的一件事是文件请求返回了带有 base64 编码的图像数据库。我当然可以使用它来显示图像,但我更愿意只从服务器请求二进制图像。

例子

/end-point/node.json

/end-point/node/5.json

/end-point/file/8.json

0 投票
1 回答
1169 浏览

drupal - 如何调用 drupal 服务模块以按自定义 cck 字段进行过滤?

我创建了名为“业务类型”的分类法,其术语如下

餐厅 非美食 酒厂 饮料 公司

我创建了一个名为“公司”的 CCK,其中一个字段 term_reference 类型记录在分类法之上

我想访问诸如“酒厂”之类的分类术语的公司列表

http://tasteofoc.myappdemo.com/api/node?parameters[type]=Company

这使所有公司都很好。

但我需要过滤以仅获取特定的业务类型。

http://tasteofoc.myappdemo.com/api/node?parameters[type]=Company¶meters[field_cat]=Beverage

我收到上述调用的错误。

您能否帮助了解如何使自定义 CCK 字段的调用正确?

问候

0 投票
0 回答
216 浏览

android - 使用 Restlet 库从 Android 调用 Drupal REST 服务时丢失用户

我正在从 Android 应用程序向 Drupal 站点进行 REST 调用。在 Drupal 站点上,我使用 Services 3.0 模块开发 REST 服务,在 Android 上,我使用 Java 库 Restlet 2.0。

首先我调用服务用户/登录,并使用收到的会话 ID 和会话名称将身份验证 cookie 注入到第二个 REST 调用。

但是,当我查看服务的 Drupal 日志时,REST 服务调用基本上有 4 个条目:

  1. 服务器信息主要对象
  2. 控制器
  3. 传递的参数
  4. 结果

条目 1-3 仍然使用登录用户捕获,但条目 4 已经作为匿名登录,并且服务实现也知道没有登录用户(即变量 $GLOBALS['user'] 没有值)。

“cookie 注入”是进行经过身份验证的调用的正确技术吗?如果是,如何将登录用户保留在 Drupal 端?

0 投票
0 回答
252 浏览

web-services - 如何使用 REST Web 服务删除文件

服务版本 7.x-3.1 drupal 版本 7.12

我使用休息服务以 Base64 编码上传文件

资源路径:file.json

如何使用休息服务删除文件?
我现在如何删除节点

资源路径:节点/nid.json,资源类型:删除

我测试

资源路径:文件/fid.json,资源类型:删除

但收到404!

0 投票
1 回答
74 浏览

iphone - 在我的 XCode 项目中找不到 DIOSConfig.h 文件

我们正在为一个 drupal 网站制作一个 iphone 应用程序。我们想使用 XML-RPC 进行通信。

我们已将 DIOS sdk 和 AFNetwork 库添加到 XCode 项目中。根据我查看的两个教程,下一步是修改一个名为 DIOSConfig.h 的文件,并在该文件中给出 drupal 服务函数的 url。但我找不到那个文件。

我必须在不同的文件中输入网址吗?