Php cUrl_setopt到Java
我有一个任务需要实现从PHP到Java编程语言的post请求。这是代码段,Java中的等效代码是什么?我不知道卷曲部分Php cUrl_setopt到Java,java,php,Java,Php,我有一个任务需要实现从PHP到Java编程语言的post请求。这是代码段,Java中的等效代码是什么?我不知道卷曲部分 函数send() { $fieldcnt=6; $data=数组( “UserID”=>this->username, “PWD”=>$this->密码, “APIKEY”=>this->APIKEY, '从'=>$this->FROM, '到'=>$this->到, 'MSG'=>$this->msgtext ); $ch=curl_init(); curl\u setopt
函数send()
{
$fieldcnt=6;
$data=数组(
“UserID”=>this->username,
“PWD”=>$this->密码,
“APIKEY”=>this->APIKEY,
'从'=>$this->FROM,
'到'=>$this->到,
'MSG'=>$this->msgtext
);
$ch=curl_init();
curl\u setopt($ch,CURLOPT\u URL,$this->base\u URL\u SendSMS);
curl_setopt($ch,CURLOPT_POST,$fieldcnt);
curl_setopt($ch,CURLOPT_POSTFIELDS,http_build_query($data));
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$res=curl_exec($ch);
卷曲关闭($ch);
返回$res;
}
在java中,您可能需要使用类似于OK的库,因此首先需要有一个数据类
public class Data {
private String UserID;
private String PWD;
private String APIKEY;
private String FROM;
private String TO;
private String MSG;
}
然后,对于每个类成员,您必须生成getter/setter
public String getUserID() {
return UserID;
}
public void setUserID(String userID) {
UserID = userID;
}
public String getPWD() {
return PWD;
}
public void setPWD(String pWD) {
PWD = pWD;
}
public String getAPIKEY() {
return APIKEY;
}
public void setAPIKEY(String aPIKEY) {
APIKEY = aPIKEY;
}
public String getFROM() {
return FROM;
}
public void setFROM(String fROM) {
FROM = fROM;
}
public String getTO() {
return TO;
}
public void setTO(String tO) {
TO = tO;
}
public String getMSG() {
return MSG;
}
public void setMSG(String mSG) {
MSG = mSG;
}
此时,您已经准备好转换php代码
$data = array(
'UserID' => $this->username,
'PWD' => $this->password,
'APIKEY' => $this->apikey,
'FROM' => $this->from,
'TO' => $this->to,
'MSG' => $this->msgtext
);
到JAVA
让我们创建您的http\u build\u查询
Data data = new Data();
data.setUserID("ASDFV238756EW");
data.setPWD(role);
data.setAPIKEY("<Your Key>");
要在Java中使用curl,需要使用Process Builder包
注意:如果您使用的是Windows,则可以保留curl.exe,但如果您使用的是linux,则必须将curl.exe更改为/usr/bin/curl
ProcessBuilder process = new ProcessBuilder("curl.exe", "[[Your-SMS-Url-Here]]",
"-X","POST",
"-H", "Authorization:Bearer <Your Access Token if provided>",
"-H", "headers1",
"-H","headers2",
"-d",json.toString());
是的,我知道,但是你能帮我把给定的代码从一种编程语言“翻译”到另一种编程语言吗?
ProcessBuilder process = new ProcessBuilder("curl.exe", "[[Your-SMS-Url-Here]]",
"-X","POST",
"-H", "Authorization:Bearer <Your Access Token if provided>",
"-H", "headers1",
"-H","headers2",
"-d",json.toString());
Process p;
try {
p = process.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
StringBuilder builder = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
builder.append(line);
builder.append(System.getProperty("line.separator"));
}
/*Set your debug point here, you will see the api response in x vairable below*/
String x = builder.toString();
try
{
}
catch(Exception e)
{
if(customer.getDeleted() == true)
{
}
else
{
}
}
} catch (IOException e) {
System.out.print("error");
e.printStackTrace();
}