无法使用基本身份验证对Web服务API进行身份验证 [英] Unable to authenticate web service api using basic authentication
问题描述
我的客户端应用程序主要包含前端代码。例如,在登录屏幕中,调用远程api以针对数据库验证用户。这在表单身份验证中工作正常,但是当实现基本身份验证时,我得到401错误。示例代码如下。请帮助。
string data = JsonConvert.SerializeObject(loginUser); cookie = RemoteData(/ authenticateuser,POST,data);
private string RemoteData(string url,string Method,string data){
string result =;
var wi =(WindowsIdentity)HttpContext.User.Identity;
var wic = wi.Impersonate();
尝试
{
使用(var client = new WebClient {UseDefaultCredentials = true})
{
client.Headers.Add(HttpRequestHeader.ContentType,application / json; charset = utf-8);
byte [] buffer = client.UploadData(_apiPath + url,POST,Encoding.UTF8.GetBytes(data)) ;
result = Encoding.UTF8.GetString(buffer,0,buffer.Length);
返回结果;
}
}
catch(Exception exc)
{
返回;
}
终于
{
wic.Undo ();
}
}
我从http://msdn.microsoft获得了上述代码.com / zh-cn / library / ff647405.aspx。编辑注册表是不可能的。我该怎么办才能让事情发挥作用
预付Thanxs
普拉迪普
I've a client application that contains mostly the front end code. For example in the login screen a remote api is called to authenticate the user against a database. This works fine in forms authentication but when basic authentication is implement i get 401 error. The sample code is as below. Kindly help.
string data = JsonConvert.SerializeObject(loginUser); cookie = RemoteData ("/authenticateuser", "POST", data);
private string RemoteData(string url, string Method, string data) {
string result = "";
var wi = (WindowsIdentity)HttpContext.User.Identity;
var wic = wi.Impersonate();
try
{
using (var client = new WebClient { UseDefaultCredentials = true })
{
client.Headers.Add(HttpRequestHeader.ContentType, "application/json; charset=utf-8");
byte[] buffer =client.UploadData(_apiPath + url, "POST", Encoding.UTF8.GetBytes(data));
result=Encoding.UTF8.GetString(buffer, 0, buffer.Length);
return result;
}
}
catch (Exception exc)
{
return "";
}
finally
{
wic.Undo();
}
}
I got the above code from http://msdn.microsoft.com/en-us/library/ff647405.aspx . Editing registry is out of question. What can i do to get things working
Thanxs in Advance
Pradeep
推荐答案
看到这个
http://world.episerver.com/Documentation/Items/Developers-Guide/EPiServer-CMS/75/Security/Configuring-Web-服务认证/ [ ^ ]
这篇关于无法使用基本身份验证对Web服务API进行身份验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!