【发布时间】:2020-02-11 10:04:43
【问题描述】:
我尝试获取 deezer API 的访问令牌,但在发送请求时我不断收到“错误代码”消息。 这是上述要求:
'https://connect.deezer.com/oauth/access_token.php?app_id=' + appID + '&secret=' + clientSecret + '&code=' + code;
应用程序 ID 和客户端密码位于 developers.deezer.com/myapps 上,所以我不会错这两个。
对于我使用 deezer 自己提供的 php 代码示例的代码(您可以在此处查找:https://developers.deezer.com/api/oauth) 上述示例代码是一个简单的页面,它使您同意像往常一样让您的应用程序成为您的数据。 最后,您会被重定向到一个带有类似这样 url 的空页面(别担心,代码和范围是假的):
http://localhost/deezerAPI/test1.php?code=fr14364f27b39760284c5698&state=27f24b97ab810mb3176d42fh
无论如何,我已经将(假)代码 fr14364f27b39760284c5698 复制并粘贴到自制的 node js 程序中(为什么选择 nodejs?因为我更习惯使用 node 发送请求)(也,这里的值也是假的):
'use strict';
const express = require('express');
var request = require('request');
const app = new express();
var appID = '<appId>'
var clientSecret = '<clientSecret>';
var code = 'fr14364f27b39760284c5698'
var requestURI = 'https://connect.deezer.com/oauth/access_token.php?app_id=' + appID + '&secret=' + clientSecret + '&code=' + code;
request(requestURI, (error, response, body) => {
console.log("Recieved body'" + body + "'");
});
app.listen(8081, () => {
console.log("WebClient is up!");
});
每次我收到正文“错误代码”。 对我来说,这只能意味着两件事:
-
deezer 给我的 php 代码示例是错误的,或者我在其中写了错误的东西(例如应用程序 ID 或客户端密码),但这不太可能,因为我已经检查了几次我写的内容。
我制作的节点 js 代码是错误的(以我提出示例请求的方式),或者像以前一样,我输入的信息是错误的(但我也检查了几次...... )。 我没有解决方案,所以如果你们有任何线索,请告诉我。提前致谢。
PS:如果您想查看 deezer 代码示例,请告诉我,我的 wamp 服务器上的内容与他们拥有的内容没有什么不同,但也许您会看到一些不相干的内容。
【问题讨论】:
-
请不要在此处发帖时包含您的 appID 或 clientSecret,我已将两者都替换为占位符。
-
如 API 文档中所述:
code > The code you received at the previous step。意味着您不能只是复制和使用您在示例中看到的代码!按照 API 文档中所述的步骤进行操作。 -
你从哪里得到代码?
-
请贴出完整代码如何获取代码
标签: php node.js httprequest deezer