webservice 接口通过 HTTP 获取数据

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Net;
 6 using System.Text;
 7 using System.IO;
 8
 9 namespace testRsa
10 {
11 public class GetDataByHttp
12 {
13
14
15 public static string DoPost(string url, string data)
16 {
17 HttpWebRequest req = GetWebRequest(url, "POST");
18 byte[] postData = Encoding.UTF8.GetBytes(data);
19 Stream reqStream = req.GetRequestStream();
20 reqStream.Write(postData, 0, postData.Length);
21 reqStream.Close();
22 HttpWebResponse rsp = (HttpWebResponse)req.GetResponse();
23 Encoding encoding = Encoding.GetEncoding(rsp.CharacterSet);
24 return GetResponseAsString(rsp, encoding);
25 }
26
27 public static HttpWebRequest GetWebRequest(string url, string method)
28 {
29 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
30 req.ServicePoint.Expect100Continue = false;
31 req.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
32 req.ContentType = "text/json";
33 req.Method = method;
34 req.KeepAlive = true;
35 req.UserAgent = "guanyisoft";
36 req.Timeout = 1000000;
37 req.Proxy = null;
38 return req;
39 }
40
41 public static string GetResponseAsString(HttpWebResponse rsp, Encoding encoding)
42 {
43 StringBuilder result = new StringBuilder();
44 Stream stream = null;
45 StreamReader reader = null;
46 try
47 {
48 // 以字符流的方式读取HTTP响应
49 stream = rsp.GetResponseStream();
50 reader = new StreamReader(stream, encoding);
51 // 每次读取不大于256个字符,并写入字符串
52 char[] buffer = new char[256];
53 int readBytes = 0;
54 while ((readBytes = reader.Read(buffer, 0, buffer.Length)) > 0)
55 {
56 result.Append(buffer, 0, readBytes);
57 }
58 }
59 finally
60 {
61 // 释放资源
62 if (reader != null) reader.Close();
63 if (stream != null) stream.Close();
64 if (rsp != null) rsp.Close();
65 }
66
67 return result.ToString();
68 }
69
70
71
72 }
73 }
74   

时间: 2024-08-06 17:24:32

webservice 接口通过 HTTP 获取数据的相关文章

CMDBuild安装及webservice接口的获取

最近项目组之前一直使用的OneCMDB出现了问题,在增删改数据时异常的慢,于是考虑是否可以优化OneCMDB,由于本人水平有限,对OneCMDB进行代码级别的优化暂时还有点难度.于是就对现有的其他开源CMDB进行调研,首先是CMDBuild(官方网站). 对于CMDBuild,先上结论. 优缺点 优点 完全自主的系统配置 界面炫酷美观,AJAX让人操作十分便捷 数据格式自由定制(在GLPI中,资产的数据格式都已经定义好了,用户很难修改) 有专门的团队在进行不断的维护,目前最新的版本是2015年6

【php】利用新浪api接口与php获取远程数据的方法,获取IP地址,并获取相应的IP归属地

本文与<[Servlet]Javaweb中,利用新浪api接口,获取IP地址,并获取相应的IP归属地>(点击打开链接)为姊妹篇,只是后端编程语言换成了php. 做出同样的效果,打开页面,得到客户端的ip,并获取利用新浪api接口获取此ip的归属地. 可以看到,在IE6也是相当正常的. 目录结构如下,非常简单,同样就两个文件,其实如果你愿意,写成一个php文件也可以,但是显示层和逻辑业务层还是不混在一起为好吧? 唯一值得注意的是,这两个文件打死也不能一个叫ipGet.php,ipGet.html

Spring AOP 自定义注解获取http接口及WebService接口入参和出参

注解方法实现过程中可以采用如下获取方式:-以下为例  HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); 1.定义两个方法注解,分别标记要处理的http接口及Webservice接口: http接口注解 1 2 3 4 5 @Retention(RetentionPolicy.RUNTIME) @Target({ El

SOAP WebService接口功能自动化测试

百度搜索:小强测试品牌 QQ群:522720170 本节内容节选自<小强软件测试疯狂讲义>一书 此处我们以qqCheckOnline的WebService接口为例进行讲解,接口的具体信息如下: l 接口描述:获得腾讯QQ在线状态 l 入参:qqCode,String类型,默认QQ号码:8698053 l 出参:qqCheckOnlineResult,String类型 返回数据代表的含义为:Y = 在线:N = 离线:E = QQ号码错误:A = 商业用户验证失败:V = 免费用户超过数量 l

WebService(二)发送数据+接收数据并进行处理操作

(一)使用WebService发送数据 1.定义webService接口 import java.util.List; import javax.jws.WebParam; import javax.jws.WebService; import com.mxz.fvp.dto.ADto; @WebService public interface MxzReceiveService { public boolean addExpressBarRecord(@WebParam(name = "rec

通过Java WebService接口从服务端下载文件

一. 前言 本文讲述如何通过webservice接口,从服务端下载文件.报告到客户端.适用于跨系统间的文件交互,传输文件不大的情况(控制在几百M以内).对于这种情况搭建一个FTP环境,增加了系统部署的复杂度和系统对外暴露的接口.通过在服务端读取文件,返回字节流到客户端的方式比较简单. 下面采用restful的接口形式,满足SOA架构接口要求.如下代码拷贝到eclipse中即可运行,功能自测试运行正常.样例代码的服务端和客户端在同一台PC上运行,放到不同PC上运行改一下发布服务和请求服务的IP地址

iOS网络编程——Day4(使用NSURLConnection异步方式获取数据)

XCode7使用HTTPS通信,在info.plist文件中加一个属性@{@"NSAppTransportSecurity":@{@"NSAllowsArbitraryLoads":YES}} 接口网站:http://www.webxml.com.cn xml  国际标准 json 流行标准 get: 使用简单,接口外露不安全 //QQ在线查询的接口宏定义GET#define QQOnlineURL_GET @"http://webservice.webx

项目总结[2]_svg+ajax+webservice+pSpace sdk实现实时数据的web展示

1.使用svg实现组态画面和动态数据展示 通过js的定时器调用webservice方法获取数据后更新节点数据 /// <summary>启动定时刷新</summary> function Start() { InitSvgElement(); this.timer = setInterval("GetTagValues()", 1000); } /// <summary>启动定时刷新</summary> function Stop() {

互联网 免费的WebService接口

winform开发暂告于段落,最近再用webservice写接口,接下来的一段时间应该偏向于此方向. (转)一批的免费webservice接口,没有技术含量,只是写在这里做个记忆 股票行情数据 WEB 服务(支持香港.深圳.上海基金.债券和股票:支持多股票同时查询)Endpoint: http://webservice.webxml.com.cn/WebServices/StockInfoWS.asmx 复制 EndpointDisco: http://webservice.webxml.com