Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php cUrl_setopt到Java_Java_Php - Fatal编程技术网

Php cUrl_setopt到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

我有一个任务需要实现从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($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();
        }