欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > java >内容正文

java

java服务器http post_使用Java程序通过http post访问ABAP Netweaver服务器

发布时间:2025/3/21 java 31 豆豆
生活随笔 收集整理的这篇文章主要介绍了 java服务器http post_使用Java程序通过http post访问ABAP Netweaver服务器 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

Created by Jerry Wang, last modified on Aug 20, 2014

source code如下:

import java.io.FileNotFoundException;

import java.io.IOException;

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.util.EntityUtils;

@SuppressWarnings("deprecation")

public class MyHTTPPost

{

final private static String POST_PREFIX = ;

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.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);

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");

}

}

运行结果:

application server会解析出Java program传入的http 请求中的"a", 然后从DB table scarr 中查找对应的记录,返回给Java side:

American AirlinesAir CanadaAir FranceAlitaliaBritish AirwaysAir PacificContinental AirlinesDelta AirlinesAir BerlinLufthansaLauda AirJapan AirlinesNorthwest AirlinesQantas AirwaysSouth African Air.Singapore AirlinesUnited Airlines

如果遇到server certificate问题,可以参考这个link的解决方案: http://code.naishe.in/2011/07...

总结

以上是生活随笔为你收集整理的java服务器http post_使用Java程序通过http post访问ABAP Netweaver服务器的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。