猿问

如何将此 PHP curl 命令转换为 JS

我正在尝试对一些 php 代码进行逆向工程,然后在 JS 中运行它。php代码如下:


$fields_string = '';

    //url-ify the data for the POST

    foreach($data as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }

    rtrim($fields_string, '&');


    //open connection

    $ch = curl_init();


    //set the url, number of POST vars, POST data

    curl_setopt($ch,CURLOPT_URL, $url);

    curl_setopt($ch,CURLOPT_POST, true);

    curl_setopt($ch,CURLOPT_RETURNTRANSFER, TRUE);

    curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);


    //execute post

    $result = curl_exec($ch);


    //decode result;

    $data = json_decode($result, TRUE);

    //close connection

    curl_close($ch);

    return $data;

我在 JS 中使用 axios,目前正在尝试以下操作:


const response: any = await axios.post(base_url, 'key1=value1&key2=value2', {

        headers: {

            'Content-Type': "multipart/form-data"

        }

    });

但我似乎遇到了问题,因为服务器无法正确解析正文。我想知道是否有人对它应该是什么样子有任何提示?


胡子哥哥
浏览 229回答 1
1回答

回首忆惘然

为了使用 axios 发送表单数据,您应该将FormDataobj 作为数据传递,它将更改为正确的标题。const formData = new FormData();formData.append('key1', 'value1');formData.append('key2', 'value2');const response = await axios.post(base_url, formData);
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答