在 java 中向销售人员发送 post 请求
Send post request to salesforce in java
我有要求需要从 salesforce 数据库中获取数据。我的输入 ID 将超过 1000+。因此,我想在 post 方法中传递这个 ID 列表。
GET 方法失败,因为它超出了限制。
有人可以帮我解决这个问题吗?
根据你的问题,我假设一些(但不是全部)对 SalesForce 的 GET 请求已经在工作,所以你已经拥有与 SalesForce 交谈所需的大部分代码,你只需要填补关于如何发出 POST 请求而不是 GET 请求。
我希望下面的代码能对此提供一些演示。请注意,它未经测试,因为我目前无法访问 SalesForce 实例来对其进行测试:
import org.apache.http.HttpHeaders;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.message.BasicNameValuePair;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
public class HttpPostDemo {
public static void main(String[] args) throws Exception {
String url = ... // TODO provide this.
HttpPost httpPost = new HttpPost(url);
// Add the header Content-Type: application/x-www-form-urlencoded; charset=UTF-8.
httpPost.setHeader(HttpHeaders.CONTENT_TYPE, ContentType.APPLICATION_FORM_URLENCODED.withCharset(StandardCharsets.UTF_8).getMimeType());
// Construct the POST data.
List<NameValuePair> postData = new ArrayList<>();
postData.add(new BasicNameValuePair("example_key", "example_value"));
// add further keys and values, the one above is only an example.
// Set the POST data in the HTTP request.
httpPost.setEntity(new UrlEncodedFormEntity(postData, StandardCharsets.UTF_8));
// TODO make the request...
}
}
也许值得指出的是,代码本质上与边栏中出现的 that in a related question 没有太大区别。
我有要求需要从 salesforce 数据库中获取数据。我的输入 ID 将超过 1000+。因此,我想在 post 方法中传递这个 ID 列表。
GET 方法失败,因为它超出了限制。
有人可以帮我解决这个问题吗?
根据你的问题,我假设一些(但不是全部)对 SalesForce 的 GET 请求已经在工作,所以你已经拥有与 SalesForce 交谈所需的大部分代码,你只需要填补关于如何发出 POST 请求而不是 GET 请求。
我希望下面的代码能对此提供一些演示。请注意,它未经测试,因为我目前无法访问 SalesForce 实例来对其进行测试:
import org.apache.http.HttpHeaders;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.message.BasicNameValuePair;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
public class HttpPostDemo {
public static void main(String[] args) throws Exception {
String url = ... // TODO provide this.
HttpPost httpPost = new HttpPost(url);
// Add the header Content-Type: application/x-www-form-urlencoded; charset=UTF-8.
httpPost.setHeader(HttpHeaders.CONTENT_TYPE, ContentType.APPLICATION_FORM_URLENCODED.withCharset(StandardCharsets.UTF_8).getMimeType());
// Construct the POST data.
List<NameValuePair> postData = new ArrayList<>();
postData.add(new BasicNameValuePair("example_key", "example_value"));
// add further keys and values, the one above is only an example.
// Set the POST data in the HTTP request.
httpPost.setEntity(new UrlEncodedFormEntity(postData, StandardCharsets.UTF_8));
// TODO make the request...
}
}
也许值得指出的是,代码本质上与边栏中出现的 that in a related question 没有太大区别。