使用Java代码以multiple form的格式给ABAP Netweaver发送数据
- 2019 年 10 月 6 日
- 笔记
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://jerry.blog.csdn.net/article/details/101169261
import java.io.FileNotFoundException; import java.io.IOException; import java.nio.charset.Charset; import org.apache.commons.codec.binary.Base64; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.mime.HttpMultipartMode; import org.apache.http.entity.mime.MultipartEntityBuilder; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.protocol.HTTP; import org.apache.http.util.EntityUtils; @SuppressWarnings("deprecation") public class MyHTTPPost { final private static String POST_PREFIX = "https://ag3.wdf.sap.corp:44354/sap/crm/file_upload?query="; private static String getRequestURL(String str) { String url = POST_PREFIX + str; url = url + "&sid=" + Math.random(); return url; } private static void sendHTTPPostRequest(String str) throws FileNotFoundException { HttpClient httpclient = new DefaultHttpClient(); String raw = "WANGJER:Saptest1"; String encoded = Base64.encodeBase64String(raw.getBytes()); HttpPost httppost = new HttpPost(getRequestURL(str)); MultipartEntityBuilder builder = MultipartEntityBuilder.create(); builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE); builder.setCharset(Charset.forName(HTTP.UTF_8)); builder.addTextBody("firstName", "Jerry"); builder.addTextBody("lastName", "Wang"); try { httppost.addHeader("Content-Type","multipart/form-data; boundary=assdsfdffafasf"); httppost.addHeader("User-Agent","Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)"); httppost.addHeader("Authorization", "Basic " + encoded); HttpEntity httpEntity = builder.build(); httppost.setEntity(httpEntity); HttpResponse httpresponse = httpclient.execute(httppost); HttpEntity resEntity = httpresponse.getEntity(); String response = EntityUtils.toString(resEntity); System.out.println(response); } catch (IOException e) { System.out.println(e.getLocalizedMessage()); e.printStackTrace(); System.out.println("error!"); } } public static void main(String[] args) throws ClientProtocolException, IOException { sendHTTPPostRequest("a"); } } ```要获取更多Jerry的原创文章,请关注公众号"汪子熙": <img src="https://user-images.githubusercontent.com/5669954/61616089-2a87e180-ac9a-11e9-861d-c29c2cf897af.png">