C# RESTAPI基本身份验证
当客户端尝试使用基本身份验证登录API时,如果服务器返回API密钥和共享密钥,可以吗?例如,如果用户输入此链接,响应将为:C# RESTAPI基本身份验证,c#,rest,asp.net-web-api,C#,Rest,Asp.net Web Api,当客户端尝试使用基本身份验证登录API时,如果服务器返回API密钥和共享密钥,可以吗?例如,如果用户输入此链接,响应将为: Content-Type: application/xml Date: Fri, 10 Nov 2006 20:04:45 GMT Transfer-Encoding: chunked Authorization: apiKey;secretKey 使用这种方法会有问题吗?我希望是这样的,因为API核心方法将只接受APIKey哈希,为了获得这些哈希,它们需要使用基
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。HTTP没有在响应中定义
授权
头,因此如果需要定义自定义头,请使用X-
前缀
同样从设计的角度来看,HTTP头将传递与调用正交的数据。您似乎试图传递一段需要在有效负载中的数据,因此我将避免使用标题
我会在有效载荷中传递这些数据
如果您使用SSL并在URL、HTTP头或有效负载中传递数据,它将是安全的。只要整个通信是通过HTTPS进行的,它看起来就很好。我认为这很好。例如,FogBugz有一个工作原理完全相同的方法。谢谢各位,我正在寻找一个使用该方法的公共API,但没有找到。我将去看看FogBugz是如何实现它的。另外一个问题,我应该使用头来传递客户端的用户名和密码,还是在URI上传递头并在头上返回令牌?谢谢回答。我试图理解你说的话,但我似乎不明白你的意思?我所说的授权是指我将使用HTTP authorization header.payload,我指的是您发送回的部分数据。HTTP授权头可以用于请求,但不能用于响应。好的,我知道了。我应该将服务器响应放在哪里?在URI上?