Play framework框架中通过post方式发送请求

搞了好久这个最终还是在play官方文档中看见的发送请求的方式,国内好像很少有使用这个框架的,加之自己不是太愿意宣传,好东西总归是好东西,不说废话了。

  在play中发送请求有两种常用的方式,一种get,一种post,当然,这里说的发送请求都是向第三方站点发送请求,而不是内部发送,内部当然不需要通过这种方式了。

  get方式:

    WS.url("url").setQueryParameter(arg0, arg1)..setQueryParameter(arg0, arg1).get();

  而使用post方式:

    WS.url("url").setContentType("application/x-www-form-urlencoded;charset=utf-8").post(content);

    content = "p=1&a=2";

  post除了可以发送字符串,还可以发送文件,流,jsonnode,当然两者返回的都是WSResponse对象了。

  另外,可以通过

  wsResponse.getHeader(play.mvc.Http.HeaderNames.CONTENT_TYPE) ;这种方式获知返回类型,从而决定处理方式,这几天我处理一个第三方接口返回类型是html,但是其body居然是String类型的xml文档,不得已,只能自己去处理body了,处理方式也是通过play内置的一些工具类去处理的,如下所示:

  

  Document dom = XML.fromString(body);
  String Retcode = XPath.selectText("//Retcode", dom);

  这样,就取到了每个节点对应的文本值,至此,就已经达到了我的目的,好了,结束。

猜你喜欢

转载自www.cnblogs.com/shianliang/p/9286041.html