我在互联网和 Stack Overflow 上进行了搜索...无法真正弄清楚这是代码问题还是 API 对于某些令牌不再有效... 我浏览了这个Stack Overflow线程并尝试了一下,但什么也没有。唯一返回的是:
“TOKEN 无效”。
我正在尝试列出此活动中具有 API 的用户此处。
这是我的代码:
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("https://services.sapo.pt/Codebits/user/1/");
// Add an Accept header for JSON format.
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = client.GetAsync("&token=NTUyI0FmY29zdGEjYW5kcmVjb3N0NEBnbWFpbC5jb20jZDkwMDdhNWUxOTNiN2VhMzcwMWJjNjI3MjMwMmI2YTQjMTQzMjU2NDU1NSNhMTc3YTdkZjNlYzk2MTg3ZjZmNzk1NTc3YjEwMDExOTcwNDE1ZTZj").Result;
HttpContent responseContent = response.Content;
// //// Get the stream of the content.
using (var reader = new StreamReader(await responseContent.ReadAsStreamAsync()))
{
// // return (await reader.ReadToEndAsync());
if (response.IsSuccessStatusCode)
{
tb1.Text = await reader.ReadToEndAsync();
}
else
{
tb1.Text = "x";
}
}
因为我是新人,我希望并认为这是我的问题,但我就是无法弄清楚。
“TOKEN无效”哪一部分不清楚?
他们的 API 帮助页面提到:
身份验证和用户
授权令牌
https://services.sapo.pt/Codebits/[电子邮件受保护]&password=grumph 获取身份验证令牌。将用作所有需要身份验证的方法的 &token= 参数。请注意,令牌可能会过期(由于超时、IP 更改或其他原因)。应用程序的正确程序是,如果应用程序在任何需要身份验证的方法中失败,则请求新令牌。
因此,当调用失败并显示“TOKEN 无效”时,首先进行
gettoken
调用以获取有效令牌。