`
y806839048
  • 浏览: 1107688 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

httpClient的xml,form,json提交

阅读更多

 

http可以实现多种提交(同理restamplate也一样)

 

提供url 和 参数由httpclient模拟相应的提交

 

 1,提交xml数据

 2,提交form表单的数据

 3,提交普通的json数据

 

 

 

 

 

1,

@Override

    public ApiResponse send(FacadeSendRequest facadeSendRequest) throws Exception{

Assert.isTrue(!StringUtil.isBlank(facadeSendRequest.getTradeCode()), "转发地址异常!");

//根据交易编码获得三湘的接口调用方法名

urlEnum = UrlTransEnum.getEnumByCode(facadeSendRequest.getBankCode(),facadeSendRequest.getTradeCode());

if(urlEnum == null){

log.error("渠道:[{}]不支持此业务,请检查!交易码:[{}]",facadeSendRequest.getBankCode(),facadeSendRequest.getTradeCode());

throw new ParamException(CodeEnum.CODE_0027.getMsg()+"{"+facadeSendRequest.getTradeCode()+"}");

}

if (TradeEnum.S0017.getTcode().equals(facadeSendRequest.getTradeCode())

|| TradeEnum.S0018.getTcode().equals(facadeSendRequest.getTradeCode())

|| TradeEnum.S0019.getTcode().equals(facadeSendRequest.getTradeCode())

|| TradeEnum.S0020.getTcode().equals(facadeSendRequest.getTradeCode())

|| TradeEnum.S0021.getTcode().equals(facadeSendRequest.getTradeCode())

|| TradeEnum.S0022.getTcode().equals(facadeSendRequest.getTradeCode())

|| TradeEnum.S0023.getTcode().equals(facadeSendRequest.getTradeCode())) {//http form post send

JSONObject packetJson = JSONObject.parseObject(facadeSendRequest.getPacket());

facadeSendRequest.setFormData(packetJson);

return super.send(facadeSendRequest);

}else{//api send

return apiSend(facadeSendRequest);

}

    }

 

2,

public String httpSend(FacadeSendRequest facadeSendRequest){

    if(facadeSendRequest.getFile() != null)

    return HttpClientUtil.uploadFile(facadeSendRequest.getUrl(), facadeSendRequest.getFileKey(),facadeSendRequest.getFile(),facadeSendRequest.getDatas());

    if(!StringUtil.isBlank(facadeSendRequest.getXmlPacket()))

    return HttpClientUtil.httpXmlPost(facadeSendRequest.getUrl(), facadeSendRequest.getXmlPacket(), facadeSendRequest.getEncoding());

        if(!CollectionUtils.isEmpty(facadeSendRequest.getFormData()))

            return HttpClientUtil.httpFormPost(facadeSendRequest.getUrl(), facadeSendRequest.getFormData());

    return HttpClientUtil.httpJsonPost(facadeSendRequest.getUrl(), facadeSendRequest.getPacket());

    }

 

 

 

工具类看附件

 

 

 

分享到:
评论

相关推荐

    HttpClient发送json、普通参数类型的Post请求(csdn)————程序.pdf

    本文主要讨论如何使用HttpClient发送JSON格式和普通参数类型的POST请求。首先,我们来看一下所需的Maven依赖。 ```xml <groupId>commons-httpclient <artifactId>commons-httpclient <version>3.1 <groupId>...

    C# post方式提交Form表单

    根据实际需求,可能需要解析JSON、XML或其他格式的数据。 7. **错误处理**: 在实际应用中,必须考虑请求失败的情况,例如网络问题、服务器错误等。可以检查`HttpResponseMessage.IsSuccessStatusCode`属性来判断...

    HttpClient抓取网页Demo

    HttpClient允许你模拟浏览器行为,发送GET、POST以及其他HTTP方法的请求,并处理服务器返回的各种内容,包括HTML、XML、JSON等。在本文中,我们将深入探讨HttpClient的基本用法,以及如何使用它来抓取网页内容。 ...

    httpclient

    例如,添加`Content-Type`头来指定发送的数据类型(如`application/json`或`application/x-www-form-urlencoded`),或者设置`Authorization`头进行身份验证。 3. **POST请求数据**:在POST请求中,数据通常以字符...

    Titanium中Httpclient访问REST 服务

    此外,对于POST请求,我们可能需要设置合适的Content-Type头部,如`application/x-www-form-urlencoded`、`multipart/form-data`或`application/json`,以匹配服务器期望的数据格式。 总的来说,Titanium的...

    httpclient 工具类

    如果需要更复杂的处理,例如解析JSON或XML,可以使用诸如Gson或Jackson这样的库来处理响应实体。 总结一下,HttpClient工具类为我们提供了一种简洁的方式去发送HTTP请求。通过它可以方便地执行GET、POST请求,并对...

    post方式提交数据

    在Android开发中,POST请求通常用于向服务器发送复杂的数据结构,比如JSON或XML格式的数据。以下是实现POST请求的一般步骤: 1. **构建请求体**:你需要将要发送的数据转换成字符串或者字节数组。这通常涉及对Java...

    C#使用Http Post方式传递Json数据字符串调用Web Service

    首先,我们需要创建一个HttpWebRequest对象,并设置其Method属性为"POST",ContentType属性为"application/x-www-form-urlencoded"。然后,我们需要将Json数据字符串参数转换为键值对的形式,并将其Url编码。最后,...

    C# WinForm提交表单到网页,并且获取反馈数据

    响应内容可以是文本、JSON、XML等,根据网页服务器的设定。 4. **解析反馈数据** 获取到服务器返回的数据后,根据数据类型进行解析。如果是JSON,可以使用`Newtonsoft.Json`库的`JsonConvert.DeserializeObject`...

    无刷新提交表单实现

    无刷新提交表单的核心是利用Ajax(异步JavaScript和XML)技术。Ajax允许我们在后台与服务器交换数据并局部更新页面,而无需重新加载整个页面。这种技术依赖于浏览器提供的XMLHttpRequest对象或者现代浏览器的Fetch ...

    使用Http post的方式调用webservice

    在上面的示例中,`payload`变量应替换为实际的XML或JSON数据。 3. **处理响应** 获取HTTP响应码后,你可以读取响应体。如果是XML,可以使用`javax.xml.parsers.DocumentBuilderFactory`解析;如果是JSON,使用相应...

    推荐_WINFORM与WEB的直接交互.rar

    这个类可能封装了HTTP请求/响应的处理,如使用`HttpClient`类发送GET或POST请求,以及解析JSON或XML数据。 实现WinForm与Web的直接交互通常涉及以下几个步骤: 1. **建立网络连接**:使用C#内置的`System.Net....

    C# 调用WebService查询手机号码归属地

    - 使用HttpClient:如果你不希望添加Web引用,也可以直接使用HttpClient发送POST请求,处理返回的XML或JSON数据。 ```csharp using (var client = new HttpClient()) { var content = new StringContent($...

    Form1_HTTP_

    5. **处理响应**:解析响应数据,可能是HTML文本、JSON、XML等,然后可能在界面上显示出来,或者进行进一步的解析和操作。 6. **错误处理**:考虑网络问题、无效URL、服务器错误等情况,程序应具备一定的错误处理...

    WindowsFormsApp11.rar

    在C#中,可以使用HttpClient类的`PostAsync`方法发送请求,然后解析响应的JSON数据。 5. **构建消息推送** 微信企业号支持多种消息类型,如文本、图文、语音等。你需要根据需求选择合适的消息类型,并构造对应的...

    VB仿LiveUpdate自动更新程序.7z

    2. **XML或JSON解析**:服务器返回的更新信息通常是以XML或JSON格式的数据,VB可以使用内置的DOM解析器或者第三方库(如JSON.NET)来解析这些数据,提取出需要的信息。 3. **文件下载管理**:一旦检测到有新的更新...

    C#请求post

    `responseContent`变量现在包含了服务器的响应内容,你可以根据需要解析这个字符串,例如JSON或XML。 在实际项目中,可能还需要处理异常,关闭`HttpClient`实例等。`HttpClient`不应该被频繁创建和销毁,通常建议...

    以Post方法传输数据_JAVA

    除了基本的POST请求,还可以使用HttpClient实现文件上传、JSON数据传输等功能。例如,如果要发送JSON数据,可以设置`Content-Type`为`application/json`,并使用`StringEntity`代替`UrlEncodedFormEntity`。 在实际...

    javahttp使用post进行提交数据

    这时,我们需要处理服务器的响应,可能包括解析JSON或XML格式的响应数据,根据返回状态码判断请求是否成功,并根据需要更新UI。 总结来说,使用Java和Android进行HTTP POST提交数据涉及以下步骤: 1. 创建HTTP连接...

Global site tag (gtag.js) - Google Analytics