通过API的Google CSE促销活动停止了工作

时间:2015-04-23 20:11:41

标签: api coldfusion google-custom-search promotions

我们有一个Google CSE(自定义搜索引擎),并构建了一个脚本,通过我们自己的网络界面通过API管理其促销活动。该脚本已经工作了三年多,但现在它失败了。它在今年2月6日工作,这是我们在今天之前使用它的最后一次。

API的文档在这里(并且在我们很久以前开发脚本时似乎没有变化): https://developers.google.com/custom-search/docs/api#create_promos

我们可以连接和授权,但是当我们尝试发送添加,更新或删除促销所需的XML时,没有任何反应。我们返回了20个促销列表,但没有发生所需的操作。没有任何类型的错误消息。

我们在这里从两个服务器试过这个。一个显示200个代码,另一个显示302.前者使用ColdFusion 9,后者使用ColdFusion 10;都使用cfhttp发送XML。也许响应代码与那里的一些差异有关。这并不能解释为什么我们多年来使用的服务器上运行的脚本现在都失败了。

Google CSE API是否仍像过去一样有效?有关修复脚本的建议吗?现在还有其他方法可以通过API使用CSE促销吗?

使用API​​的代码:

<cfhttp url="#cseURL#" method="post" result="postResult">
<cfhttpparam type="header" name="Authorization" value="GoogleLogin auth=#Auth#">
<cfhttpparam type="XML" value="#xml.trim()#">
</cfhttp>

我们发送的XML示例:

<Batch><Remove><Promotions><Promotion id="06DD467E-B663-437D-F94B4EB6DA0B13AF" /></Promotions></Remove></Batch>

#Auth#变量包含根据API文档生成的授权代码,并且似乎有效;通过早期的API调用生成它时没有错误消息。

#cseURL#变量包含文档格式的正确URL: https://www.google.com/cse/api/#USER_ID#/promotions/#CSE_ID#

提前感谢您提供指导或建议。

-Ken

1 个答案:

答案 0 :(得分:1)

我们被告知CSE API网址已从www.google.com更改为cse.google.com,我们的代码现已恢复正常运作。