当客户端尝试使用基本身份验证登录API时,服务器是否返回API密钥和共享密钥是否可以?例如,如果用户输入此链接http://api.example.com/authorize?auth=some_encoded_Base64_string,则响应将为:
Content-Type: application/xml
Date: Fri, 10 Nov 2006 20:04:45 GMT
Transfer-Encoding: chunked
Authorization: apiKey;secretKey
使用此方法会有问题吗?我希望是这样的,因为API核心方法只接受APIKey哈希,并且为了获得它们需要使用基本身份验证,因为它们是第一步。我暂时不会在这里使用OAuth。
我正在为这个项目尝试新的ASP.NET Web API。
答案 0 :(得分:0)
HTTP没有在响应中定义Authorization
标头,因此如果您需要定义自定义标头,请使用X-
前缀。
同样从设计角度来看,HTTP标头要将正交的数据传递给调用。您似乎试图传递需要在有效负载中的数据,因此我不会使用标题。
我会在有效载荷中传递这些数据。
如果您使用SSL并在URL,HTTP标头或有效负载中传递数据,那么它将是安全的。