我已经将此cURL请求正确地在远程接口上正常工作
curl -XGET "https://server.host:8080/peregrine" -d '{"exchanges":["kucoin", "kraken"],"volume":10}' -k
我正在尝试使用Vue.js构建一个小的前端应用程序,并且需要将以上内容转换为Axios get请求。 到目前为止,我一直在尝试以下方法:
axios({
method: 'get',
url: 'https://server.host/peregrine',
data: {"exchanges":["kucoin", "kraken"],"volume":10}
});
使用params
代替data
使其成为URL,并且远程服务器说它没有接收到数据。
我在做什么错?谢谢。
答案 0 :(得分:1)
可能的问题是,使用GET不能像执行操作那样传递数据。您必须将它们作为查询参数传递。 尝试通过以下方式更改您的通话:
axios.get('https://server.host/peregrine', {
params: {"exchanges":["kucoin", "kraken"],"volume":10}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
})
.then(function () {
// always executed
});
答案 1 :(得分:0)
GET请求不应具有请求正文。
CURL允许您使用一个发出GET请求,但是XMLHttpRequest和fetch(axios包装的浏览器中的HTTP API)不允许。
改为发出POST请求。您可能需要更改服务器端代码以支持此操作。
答案 2 :(得分:0)
感谢您的答复!
实际上,无法使用axios.get()发送数据正文 我们最终调整了服务器端,以接受常规的通用GET请求。再次感谢所有回答的人!