如何在空对象中传递参数以获取有效的URL

时间:2017-11-11 11:03:03

标签: javascript parameter-passing query-string fetch

如何在空对象中传递参数以获取有效的URL?

我正在使用fetch方法来获取API并获取网址,但需要设置查询参数以获取完成的网址。

我需要传递 stationId & 日期 params 并设置在 fetchtrips 函数中,现在它只获得'到达'的类型。

 export default class Api {
  static fetch(type, params = {}) {
    const url = `${config.api.host}${config.api.paths[type]}`;
    console.log(url)
    let options = {
      headers: config.api.headers
    };

    Object.assign(options, params);

    return fetch(url, options)
      .then(response => response.json())
      .catch(error => Promise.reject(error));
  }
  static fetchTrips(stationId, date) {
    const apiURL = Api.fetch('arrivals');
    return apiURL;
  }
}

1 个答案:

答案 0 :(得分:0)

尝试查询字符串节点模块以创建查询参数。

从" query-string";

导入queryString
static fetch(type, params = {}) {
   const queryParam = queryString.stringify(param);
   const url = `${config.api.host}${config.api.paths[type]}${queryParam}`;
   let options = {
       headers: config.api.headers
   };
   return fetch(url, options)
       .then(response => response.json())
       .catch(error => Promise.reject(error));
}