相关疑难解决方法(0)

ASP.NET HTTP授权标头

我想知道为什么我的asp.net应用程序在命名为"授权"时不会将标题添加到我的帖子中,但是当我更改一个字符时,它会正常工作,比如说"授权".在其他网站的文档中,他们总是使用"授权"这个名称,所以我也想,在这一点上,我只是想知道为什么.

我已经阅读了一些关于此的主题,但没有找到任何合理的原因.

这是我的代码如下:

string fileName = "c:\\xyz.xml";
string uri = "http://myserver/Default.aspx";
req = WebRequest.Create(uri);
req.Method = "POST";
req.ContentType = "text/xml";
byte[] authBytes = Encoding.UTF8.GetBytes("DDSServices:jCole2011".ToCharArray());
req.Headers.Add("Authorization", "BASIC " + Convert.ToBase64String(authBytes) );
req.Headers.Add("test", "test");
UTF8Encoding encoder = new UTF8Encoding();
byte[] data = encoder.GetBytes(this.GetTextFromXMLFile(fileName));
req.ContentLength = data.Length;
Stream reqStream = req.GetRequestStream();
reqStream.Write(data, 0, data.Length);
reqStream.Close();
req.Headers.Add("Authorization", "BASIC" + Convert.ToBase64String(authBytes));
System.Net.WebResponse response = req.GetResponse();
System.IO.StreamReader reader = new StreamReader(response.GetResponseStream());
string str = reader.ReadToEnd();
Run Code Online (Sandbox Code Playgroud)

另一个令人讨厌的是当我通过fiddler添加监视变量时,它工作正常.

c# asp.net httpwebrequest

25
推荐指数
2
解决办法
9万
查看次数

为什么我的Http客户端在指定凭据时发出2个请求?

我创建了RESTful webservice(WCF),我检查每个请求的凭据.我的一个客户是Android应用程序,服务器端的一切似乎都很棒.我收到请求,如果它有正确的标题 - 我处理它等.

现在我创建了使用此服务的客户端应用程序.这是我做GET的方式:

// Create the web request  
            var request = WebRequest.Create(Context.ServiceURL + uri) as HttpWebRequest;

            if (request != null)
            {
                request.ContentType = "application/json";

                // Add authentication to request  
                request.Credentials = new NetworkCredential(Context.UserName, Context.Password);

                // Get response  
                using (var response = request.GetResponse() as HttpWebResponse)
                {
                    // Get the response stream  
                    if (response != null)
                    {
                        var reader = new StreamReader(response.GetResponseStream());

                        // Console application output
                        var s = reader.ReadToEnd();

                        var serializer = new JavaScriptSerializer();
                        var returnValue = (T)serializer.Deserialize(s, typeof(T)); …
Run Code Online (Sandbox Code Playgroud)

c# http httpwebrequest basic-authentication

11
推荐指数
2
解决办法
5260
查看次数

标签 统计

c# ×2

httpwebrequest ×2

asp.net ×1

basic-authentication ×1

http ×1