Я использую API с NODEJS и использую axios для выполнения "get" ...
In NODEJS мы называем "params" все, что приходит до "?" Символ, и мы называем "запрос" всем, что идет после the "?" Символ, , такой как:
https://www.url.com/testing.xsjs?QueryName1='test1,test1'&QueryName2=1
Проблема Я имею в Axiosявляется то, что неправильно создает URL-адрес , правильный URL-адрес которого должен быть:
https: //www.url.comho/fatSales.xsjs?Shop='shop1,shop2,shop3'&PeriodoDe=201801&PeriodoAte=201807&Kpi='kp1,kp2,kp3'& Select = NUCOMPETEC
Но URL-адрес, который он создает для меня, таков:
https://www.apiUrl.com/Shop=shop1, + shop2, + shop3&PeriodoDe=201801&PeriodoAte=201807&Kpi=kp1,+kp2,+kp3&Select=NUCOMPETEC
У меня есть некоторые проблемы с этим URL, который он создает, которые следующие:
1) Магазин и Kpi создает "+ "символ 2) Он не добавляет параметр (NODEJS) перед"? "Символ ...
Помните, что: Shop и Kpi (это массив с 1 или * элементами)
const axios = require('axios');
const Qs = require('qs');
class ApiDAO {
constructor(xsjs, shoppingId, periodOf, periodUntil, kpi, select){
this.xsjs = xsjs;
this.shoppingId = shoppingId;
this.periodOf = periodOf;
this.periodUntil = periodUntil;
this.kpi = kpi;
this.select = select;
}
configAxios(){
return axios.create({
method: 'GET',
responseType: 'json',
responseEncoding: 'utf8',
headers: {
'Content-Type': "application/json",
'Cache-Control': "no-cache",
Authorization: "",
Apikey: "",
},
params: {
xsjs: this.xsjs,
Shop: this.shoppingId,
PeriodoDe: this.periodOf,
PeriodoAte: this.periodUntil,
Kpi: this.kpi,
Select: this.select
},
});
}
async getResponseAxios(){
return await this.configAxios().get('https://www.apiUrl.com/');
}
}
module.exports = () => { return ApiDAO };