0

我正在尝试通过 ColdFusion 请求从 WNS 获取“访问令牌”,但收到“错误请求”响应。我相信我已按照此处的说明正确设置了所有内容。我的设备正在将 URI 注册到我的后端。

这是一个简单的代码片段;(我当然隐藏了密钥)

<cfhttp url="https://login.live.com/accesstoken.srf" method="post" result="httpResp">
<cfhttpparam type="header" name="Content-Type" value="application/x-www-form-urlencoded" />

<cfhttpparam type="URL" name="grant_type" value="client_credentials" />
<cfhttpparam type="URL" name="client_id" value="ms%2Dapp%3A%2F%2Fs%2D1%2D15%2D2%2D1197233413%2D3602308102%2D1084427847%2D2188608249%2D1036687727%2D3580410356%2D2392468796" />
<cfhttpparam type="URL" name="client_secret" value="************************" />
<cfhttpparam type="URL" name="scope" value="notify.windows.com" />

当我直接通过浏览器测试 URL 时,我也得到了失败的响应。感谢你的帮助。

谢谢,

伊恩。

4

1 回答 1

0

我认为根据 MSDN 上的示例,您现在设置为“URL”的 cfhttpparam 字段实际上应该设置为“FORMFIELD”。

<cfhttpparam type="FORMFIELD" name="grant_type" value="client_credentials" />
<cfhttpparam type="FORMFIELD" name="client_id" value="..." />
<cfhttpparam type="FORMFIELD" name="client_secret" value="************************" />
<cfhttpparam type="FORMFIELD" name="scope" value="notify.windows.com" />

该示例似乎将它们放在内容区域(显示原始帖子) - 所以这些是帖子的表单字段,而不是 URL 字段对吗?

于 2015-09-21T13:41:18.270 回答