Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# RESTAPI基本身份验证_C#_Rest_Asp.net Web Api - Fatal编程技术网

C# RESTAPI基本身份验证

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哈希,为了获得这些哈希,它们需要使用基

当客户端尝试使用基本身份验证登录API时,如果服务器返回API密钥和共享密钥,可以吗?例如,如果用户输入此链接,响应将为:

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上?