未处理的拒绝(TypeError):无法在'Window'上执行'fetch':使用GET / HEAD方法的请求不能有正文

时间:2018-05-02 06:42:22

标签: ajax reactjs

  

未处理的拒绝(TypeError):无法执行'fetch'   'Window':使用GET / HEAD方法的请求不能有正文。

得到上述错误。

export const checkMobile = mobile => {
  return ajax(`/mobiles/search`, { method: "GET", body: mobile });
};

function ajax(uri, options = {}) {
  const defaultOptions = getDefaultOptions();

  options.method = options.method ? options.method : defaultOptions.method;

  if (!options.formType) {
    options.headers = options.headers
      ? options.headers
      : defaultOptions.headers;
  }

  options.credentials = options.credentials
    ? options.credentials
    : defaultOptions.credentials;

  if (options.body && !options.formType) {
    options.body = buildParam(options.body);
  }

  uri = uri.startsWith("/") ? uri : "/" + uri;
  console.log(`${CLIENT_URL}${uri}`);
  return fetch(`${CLIENT_URL}${uri}`, options).then(data => data.json());
}

为什么我不被允许添加身体数据。现在我将如何将数据传递到后端。我在前端使用反应。

1 个答案:

答案 0 :(得分:0)

检查您的options对象,如果您使用body,请确保undefinedGET

GET请求不应在body中发布任何数据。如果您打算发送数据,则可能需要使用POST作为方法。