因为要用到对方一个查询接口, 对方java那边开发了此接口 请求参数通过xml文件发送 然后返回一个xml文件给我.
我试了用curl没有成功, 还有那个接口地址我直接在浏览器打开报错, 是他们的问题?
下面是对方的java请求例子
java测试用例:
public void testquerypolicy() throws exception{
httpclient client = new httpclient();//httpclient version: 3.0-rc3 //10.100.148.194
client.getstate().setcredentials( new authscope(“test.tpis.tpaic.com”, 13180, authscope.any_realm), new usernamepasswordcredentials(“avaitest”, “password”));
postmethod get = new postmethod(“http://test.tpis.tpaic.com:13180/webservice/querypolicy.do”);
get.setdoauthentication( true );
get.setrequestheader(“content-type”, “textml;charset=gbk”);
try {
string requeststring = “”
+ “”
+ “”
+ “21000000790150000003”
+ “440183198604093426”
+ “”
+ “”;
requestentity entity = new stringrequestentity(requeststring, “text/xml”, “gbk”);
get.setrequestentity(entity);
client.executemethod( get );
saxbuilder sb = new saxbuilder();
document doc = null;
try {
doc = sb.build(new inputstreamreader(get.getresponsebodyasstream(),”gbk”));
} catch (jdomexception e) {
e.printstacktrace();
} catch (ioexception e) {
e.printstacktrace();
}
format format = format.getprettyformat();
format.setencoding(“gbk”);
xmloutputter outputter = new xmloutputter();
outputter.setformat(format);
string xmlstring = outputter.outputstring(doc);
system.out.println(xmlstring);
} catch (exception e) {
e.printstacktrace();
}
}
求教 根据他这个 , php该如何请求.
回复讨论(解决方案)
主要是用cur请求的方式是否正确, 请求参数直接用curl通过post发送.
另外对方还要求发送用户名密码, 这个用户名和密码是如何发送 放到头部里? 如何放到头部.
是不是有白名单限制?
帐号和密码怎么放头部这个并没有什么难度 看下 curl的 header 设置方法即可.主要是弄清楚他要的规范,文档没有吗?只有这么一个java 的demo?
请求参数通过xml文件发送 然后返回一个xml文件给我
是否用soap方式呢?先沟通清楚。
1、确认你的php支持curl
2、在网页上打开对方给的url看看是否能看到有内容