通过 javascript 或 jquery 中的 curl 请求将值发布到 golang

Posting values to golang via curl request in javascript or jquery

本文关键字:golang 请求 javascript jquery 中的 curl 通过      更新时间:2023-09-26

这是我在php上的卷曲帖子。这完美地工作

extract($postFieldsArr);
$json_id = json_encode($postFieldsArr);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://localhost:9000/GoogleSimpleReports');
curl_setopt($ch, CURLOPT_PORT, 9000);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_id);
curl_setopt($ch, CURLOPT_SSLVERSION, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
curl_setopt($ch, CURLOPT_HTTPHEADER, array(                                                                          
    'Content-Type: application/json',                                                                                
    'Content-Length: ' . strlen($json_id))                                                                       
);                                                                                                                   
$result = curl_exec($ch);

同样,我正在尝试执行从javascript到golang的curl帖子,这是正确的语法吗?如何设置此 setRequestHeader 授权?

$.ajax({
        url: 'https://localhost:9000/GoogleSimpleReports',
        beforeSend: function(xhr) {
             xhr.setRequestHeader("Authorization", "Bearer 6QXNMEMFHNY4FJ5ELNFMP5KRW52WFXN5")
        }, success: function(data){
            alert(data);
            //process the JSON data etc
        }
})

要设置请求标头,您必须使用 Write 函数,该函数提供了一个接受keyvalue作为参数的Get()函数。

func (h Header) Set(key, value string)

要设置请求标头,您应该使用:

writer.Header().Set("Content-Type", "application/json")

其中writer属于 http.ResponseWriter 类型。