如何在C#中使用System.Net.WebRequest设置用户代理 [英] How to set User Agent with System.Net.WebRequest in c#

查看:73
本文介绍了如何在C#中使用System.Net.WebRequest设置用户代理的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,我正在尝试使用WebRequest设置用户代理,但不幸的是,我仅找到了如何使用HttpWebRequest进行操作,因此这是我的代码,希望您能帮助我使用WebRequest设置用户代理./p>

这是我的代码

 公共字符串Post(字符串url,字符串Post,字符串标头,字符串Value){字符串str_ReturnValue =";WebRequest request = WebRequest.Create(url);request.Method ="POST";request.ContentType ="application/json; charset = UTF-8";request.Timeout = 1000000;if(标题!=空值&值!=空值){request.Headers.Add(Header,Value);}使用(流s = request.GetRequestStream()){使用(StreamWriter sw =新的StreamWriter(s))sw.Write(Post);}使用(流s = request.GetResponse().GetResponseStream()){使用(StreamReader sr = new StreamReader(s)){var jsonData = sr.ReadToEnd();str_ReturnValue + = jsonData.ToString();}}return str_ReturnValue;} 

我尝试添加"request.Headers.Add(" user-agent,_USER_AGENT);"但我收到一条错误消息.

解决方案

使用

或者,可以使用 WebRequest.CreateHttp,而不是强制转换 .

Hi I'm trying to set User Agent with WebRequest, but unfortunately I've only found how to do it using HttpWebRequest, so here is my code and I hope you can help me to set the User Agent using WebRequest.

here is my code

    public string Post(string url, string Post, string Header, string Value)
    {
        string str_ReturnValue = "";

        WebRequest request = WebRequest.Create(url);

        request.Method = "POST";
        request.ContentType = "application/json;charset=UTF-8";                        
        request.Timeout = 1000000;

        if (Header != null & Value != null)
        {
            request.Headers.Add(Header, Value);                                
        }

        using (Stream s = request.GetRequestStream())
        {
            using (StreamWriter sw = new StreamWriter(s))
                sw.Write(Post);
        }

        using (Stream s = request.GetResponse().GetResponseStream())
        {                
            using (StreamReader sr = new StreamReader(s))
            {
                var jsonData = sr.ReadToEnd();
                str_ReturnValue += jsonData.ToString();
            }
        }

        return str_ReturnValue;
    }

I have tried with adding "request.Headers.Add("user-agent", _USER_AGENT);" but I receive an error message.

解决方案

Use the UserAgent property on HttpWebRequest by casting it to a HttpWebRequest.

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.UserAgent = "my user agent";

Alternatively, instead of casting you can use WebRequest.CreateHttp instead.

这篇关于如何在C#中使用System.Net.WebRequest设置用户代理的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆