Javascript中的cURL POST请求

7kqas0il  于 2022-11-13  发布在  Java
关注(0)|答案(1)|浏览(248)

我正在尝试写入以下cURL请求:

$ curl -d @your_filename.json -H "Content-Type: application/json" -i "https://www.googleapis.com/geolocation/v1/geolocate?key=ENTER-KEY"

在Javascript中:

$.ajax({
        data: JSON.stringify(data),
        url: "https://www.googleapis.com/geolocation/v1/geolocate?key=ENTER-KEY",
        type: 'POST',
        dataType: 'json',
        contentType: 'application/json',
        success: function() {
            console.log(data);
        },
        error: function(){
            alert("wrong");
        }
    });

这一切都是在堆栈溢出后偶然发现的(这里所有的qns都是关于发布登录和通行证的)。这个请求应该以json发送信息给Google,并且应该以json返回响应。但是什么都没有发生。是否需要做些什么来显示响应?我以为 AJAX 使用XmlHttpRequest,因此它应该在没有任何显式任务来显示响应的情况下工作。
我将感激任何帮助!

w8f9ii69

w8f9ii691#

如果有人遇到和我一样的问题,你应该使用fetch()来处理这样的事情,它真的很方便:

var url = 'https://www.googleapis.com/geolocation/v1/geolocate?key=YOUR_KEY';
var data = {some: json};
  fetch(url, {
    body: JSON.stringify(data),
    headers: {
      'dataType': 'json',
      'content-type': 'application/json'
    },
    method: 'POST',
    redirect: 'follow'
  })
  .then(response => {
    if (response.status === 200) {
      console.log(response.text());
  } else {
   throw new Error('Something went wrong on api server!');
  }
})
.catch(error => {
  console.error(error);
});

相关问题