C#请求Http地址

using System;
using System.IO;
using System.Net;
using System.Text;

public class HttpUtil
{

    private const string sContentType = "application/x-www-form-urlencoded";
    private const string sUserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";

    public static string Send(string data, string url)
    {
        return Send(Encoding.GetEncoding("UTF-8").GetBytes(data), url);
    }

    public static string Send(byte[] data, string url)
    {
        Stream responseStream;
        HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
        if (request == null)
        {
            throw new ApplicationException(string.Format("Invalid url string: {0}", url));
        }
        // request.UserAgent = sUserAgent;
        request.ContentType = sContentType;
        request.Method = "POST";
        request.ContentLength = data.Length;
        Stream requestStream = request.GetRequestStream();
        requestStream.Write(data, 0, data.Length);
        requestStream.Close();
        try
        {
            responseStream = request.GetResponse().GetResponseStream();
        }
        catch (Exception exception)
        {
            throw exception;
        }
        string str = string.Empty;
        using (StreamReader reader = new StreamReader(responseStream, Encoding.GetEncoding("UTF-8")))
        {
            str = reader.ReadToEnd();
        }
        responseStream.Close();
        return str;
    }
}
时间: 2024-08-14 01:30:25

C#请求Http地址的相关文章

请问android直接post请求登录地址成功后,webview还是现实登录界面

============问题描述============ 之前登录是这样做的: webview.loadUrl(调js登录的方法),  这个js方法其实也就是post请求一个登录地址 现在我直接做一个登录界面,里面直接post这个请求,把需要的数据传过去,返回成功. 但是我回到webview刷新一下,还是显示网页的登录界面.按道理应该是显示用户信息界面. 后来发现是cookie的问题.但是这个cookie一点都不熟悉 问题大概就是: android应用登录界面post请求登录地址成功后 webv

DHCP客户端请求IP地址的过程(DHCP工作原理)

DHCPdiscover        目标端口    源IP      目标IP UDP(67)    0.0.0.0   255.255.255.255 DHCP客户机寻找DHCP服务器的阶段,DHCP客户机以广播方式发送DHCPdiscover发现信息寻找DHCP服务器,即向地址255.255.255.0发送待定的广播信息,网络上每一台安装了TCP/IP协议的主机都会接收到这种广播信息,但只有DHCP服务器做出响应 DHCPOFFER  udp(68)   源ip是DHCP服务器的ip 目

伪造Http请求IP地址

注意:伪造Http请求IP地址一般为非推荐使用手段 一般使用:简单投票网站重复投票,黑别人网站 在项目开发中(web项目),我负责的系统(简称PC),需要调其它系统接口,并且该系统需要获取客户端(浏览器访问端)的IP地址,给我愁死了, 正常流程:浏览器---访问PC系统----PC系统需要调第三方系统,此时默认情况下,PC发起的request请求IP地址是PC所在服务器的IP地址,而不是请求浏览器端的IP地址 所以,就想着是否能把request里的IP地址给修改了,因为在PC系统里是能获取到请求

把post请求的地址粘贴到浏览器地址栏敲回车报错405[Method Not Allowed]

为什么把post请求的地址粘贴到浏览器地址栏敲回车会报405?原因:在浏览器地址栏敲回车,浏览器默认是以get方式发送请求,而你的请求是post,这样当然会报405了: 405:方法不允许,不支持get请求方式,解决方法:在后台controller中再加一个RequestMapping @RequestMapping(value = "traceDeletelist",method = RequestMethod.GET)

java获取客户端请求ip地址

public static String getIpAddr(HttpServletRequest request) { if (null == request) { return null; } String proxs[] = { "X-Forwarded-For", "Proxy-Client-IP", "WL-Proxy-Client-IP", "HTTP_CLIENT_IP", "HTTP_X_FORWAR

Get和Post方式请求一个地址,返回请求数据

package cn.gis; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLConnection; /** * 路径分析 * @author 刘仁奎 */ public class GISData { /** * Get请求方式 * * @param urlAdd

SpringBoot中利用过滤器修改请求url地址

要求: 代码中配置的url路径为http://127.0.0.1/api/associates/queryAssociatesInfo 现在要求http://127.0.0.1/associates/queryAssociatesInfo也可以同样访问同一个conroller下面的method,并且要求参数全部跟随 代码: package com.shitou.huishi.framework.filter; import java.io.IOException; import javax.se

wcf服务元数据WSDL中的地址为请求方地址不再是主机名

WCF服务的WSDL内容中服务地址里的主机部分都是默认是主机名称,这样在一些虚拟机环境下外部根本访问不到这些主机,开发时候引用会发生异常 经查可以通过配置服务行为,让这些主机内容为请求方的主机地址,需要Web.config中修改: useRequestHeadersForMetadataAddress 见:http://www.baidu.com/link?url=6kTHiRwP6M43muX6T8bwY-RDzn8R5jYwt6eZm-3BrEXROutzR-n0bvBuNfb0MIAYd7

Qt请求http地址数据

QNetworkAccessManager *manager = new QNetworkAccessManager(this);; QNetworkRequest network_request; QByteArray post_data; network_request.setUrl(QUrl("http://109.26.149.57:8080/tsinghuaVC/init/selectAllFolder.action")); network_request.setHeader

再IOS9中请求http地址的时候会报的错误解决。AVAudioPlayer为什么代码没有问题但是播放不出来的原因

在新版的Xcode7.1中在请求HTTP的时候总会报一些错误,只要有http的请求都会报错,在iOS9 中,苹果将原http协议改成了https协议,使用 TLS1.2 SSL加密请求数据 报的错大概是有2种 第一种:App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. Temporary exceptions can be configured via