萨摩耶丿 2019-05-27 16:05 采纳率: 0%
浏览 2527

axios请求post变成get同时多一个别的地址的options请求

配置请求头和请求拦截后,试验获取token值,但是post请求会变成get请求,同时多了一个http://www.139site.com/?e=dns&t=api.mars.net/router/token.htm的请求,config中跨域请求也配置好了,就是请求不出来,试过别的地址请求可以做到,就是想不通了

import Qs from "qs";
import _vue from "@/main.js";
import axios from "axios";
import store from "@/store/index";

axios.defaults.headers["Content-Type"] = "application/x-www-form-urlencoded";
axios.defaults.headers["X-Requested-With"] = "XMLHttpRequest";
axios.defaults.withCredentials = true;
axios.defaults.crossDomain = true;

/**
 * 请求拦截器
 */
axios.interceptors.request.use(
  config => {
    let token = window.sessionStorage.getItem("x_token");
    config.data.x_token = token;
    config.data = Qs.stringify(config.data);
    return config;
  },
  err => {
    return Promise.reject(err);
  }
);
let baseUrls = baseUrl + "/token.htm";
// 获取 token
const getToken = () => {
  // 清空 token
  window.sessionStorage.setItem("x_token", "");
  axios
    .post(baseUrls, {})
    .then(res => {
      if (res.success) {
        store.commit({
          type: "getToken",
          x_token: res.data.x_token
        });
      } else {
        getToken();
      }
    })
    .catch(res => {
      console.log(res);
    });
};

报错:
Access to XMLHttpRequest at 'http://www.139site.com/?e=dns&t=api.mars.net/router/token.htm' (redirected from 'http://console.mars.net:81/baseUrl/token.htm') from origin 'http://console.mars.net:81' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

  • 写回答

1条回答

  • 坚毅的小解同志 前端领域新星创作者 2023-05-29 11:56
    关注

    报错 还是有跨域问题 没解决cors 或者jsonp

    评论

报告相同问题?

悬赏问题

  • ¥15 gwas 分析-数据质控之过滤稀有突变中出现的问题
  • ¥15 没有注册类 (异常来自 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
  • ¥15 知识蒸馏实战博客问题
  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案