REST API:使用 C# 结合登录信息和 API 操作?
Posted
技术标签:
【中文标题】REST API:使用 C# 结合登录信息和 API 操作?【英文标题】:REST API: Combine login information and API action using C#? 【发布时间】:2012-03-23 11:09:12 【问题描述】:我正在尝试在 C# 中使用 name.com API。 API 有不同的操作,包括 /Login、/account/get、/create/domain 等等。你可以找到文档here
/Login 方法是 POST,body 是 JSON,用 HttpWebRequest 完成,成功。它返回类似:
"result":
"code":100,
"message":"Command Successful"
,
"session_token":"a59a09be6562e977a166fdd2b345a235c8b6c724"
但登录后,我需要使用其他服务(运行其他 API 操作)。
这里我发送另一个 HttpWebRequest 为:
string base = "https://api.dev.name.com/api/"
HttpWebRequest request;
request = WebRequest.Create(base + "account/get") as HttpWebRequest;
....
....
它没有返回帐户信息,而是返回一个错误,上面写着:
"result":
"code":251,
"message":"Authentication Error - No Api Session Or Username Token Supplied"
我认为我需要一种方法来发送请求以及登录信息。这里的错误消息是“Authentication Error - No Api Session or Username Token Supplied”
注意:此 API 有 PHP 示例代码和类。这是API Documentation的链接
【问题讨论】:
【参考方案1】:参见documentation 的第 18 页。您需要将返回的会话令牌作为请求标头传递:
Api-Session-Token: <session_token>
因此,一旦您获得响应并获得令牌,您只需添加以下行:
httpWebRequest.Headers.Add("Api-Session-Token", <session_token>);
【讨论】:
以上是关于REST API:使用 C# 结合登录信息和 API 操作?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用邮递员测试 Django REST 框架登录保护 API?
有没有可能使用rest api在twitter中获取到给定日期的登录详细信息?