{$ value}在curl post请求中意味着什么?

时间:2017-06-05 13:02:45

标签: php json curl

我有以下卷曲请求

   $Curl_Session = curl_init($url);
        curl_setopt($Curl_Session, CURLOPT_POST, count($post));
        curl_setopt($Curl_Session, CURLOPT_POSTFIELDS, "login={$username}&password={$password}");
        curl_setopt($Curl_Session, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($Curl_Session, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($Curl_Session, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($Curl_Session, CURLOPT_SSL_VERIFYHOST, false );
        curl_setopt($Curl_Session, CURLOPT_SSL_VERIFYPEER, false );     
        $request = curl_exec($Curl_Session);

使用{}意味着什么?这个请求是否容易受到xss的攻击(我的意思是登录和密码参数)?

它是类型设置为application / json

的卷曲请求

1 个答案:

答案 0 :(得分:0)

http://php.net/manual/en/language.types.string.php

  

复杂(卷曲)语法

     

这不称为复杂,因为语法很复杂,但因为它允许使用复杂的表达式。

     

可以通过此语法包含任何具有字符串表示形式的标量变量,数组元素或对象属性。只需以与字符串外部相同的方式编写表达式,然后将其包装在{}中。由于{无法转义,因此仅当$紧跟{后才能识别此语法。

是的,你使用它的方式很容易注射。你最好传递一系列POST字段,如下所示:

curl_setopt($Curl_Session, CURLOPT_POSTFIELDS, ['login' => $username, 'password' => $password];