我有一个应用程序,可以在我的浏览器URL中接收令牌

http://localhost:8081/reset/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI2MmU2YWJmMmMzMzI0Mjk1NGQyNmVjZjIiLCJpYXQiOjE2NTk1MDIwNTEsImV4cCI6MTY1OTUwMjk1MX0.GIlKy_GI7HlfuB1WgD9HPxOGRZUX2_uOtOclrDTW3Y8

如何从我的URL中删除(.)

这就是我go 我的路由的方式

  { name: "reset", path: "/reset/:token", component: Reset },

这是我关于如何调用函数的脚本标记


<script>
import axios from "axios";
export default {
  data() {
    return {
      password: "",
      confirm_password: ""
    };
  },
  mounted() {
    console.log("the id is :" + this.$route.params.token);
  },
  methods: {
    async submit() {
      let token = this.$route.params.token;
      let encoded = encodeURI(token);
      return axios({
        method: "post",
        data: {
          password: this.password,
          token: this.$route.params.token
        },
        url: "http://localhost:5000/api/auth/updatePassword",
        headers: {
          "Content-Type": "application/json"
        }
      })
        .then(res => {
          console.log(res);
          this.$router.push({ name: "login" });
        })
        .catch(error => {
          console.log(error);
        });
    },
    clear() {
      this.$refs.form.reset();
    }
  }
};
</script>

在移除(.)之前,我无法获得重置页面.请问我如何对令牌进行编码

推荐答案

您拥有的令牌是一个JWT令牌,它应该包含两个点.我不认为移除它们是个好主意.然而,Vue路由似乎将这些点解释为分隔符或其他什么东西,从而导致路由无法找到该路由.

您可以使用查询字符串而不是路由参数.将令牌添加到URL中,如下所示:

http://localhost:8081/reset?token=eyJhbGciOiJ...

您应该将路由更改为:

{ name: "reset", path: "/reset", component: Reset },

现在,您可以通过以下方式从路由获取它:

this.$route.query.token

Vue.js相关问答推荐

vue3中的转换可以在滑入但不能滑出时工作

Vue 2 如何在全局函数中返回观察者

在 Vuejs 中更新 Chartjs 图表数据集

如何在 v-for 指令切换状态下安全地制作包含附加到对象的复选框的列表(W/O 切换列表中的其他复选框)?

Nuxt.js 中的开发工具样式编辑问题

Vuex:如何等待动作完成?

如何在 Vue.js 中添加动态组件/部分

Bootstrap-vue b-table,标题中带有过滤器

为什么当我 Select 第二个输入框时音译transliteration不起作用?

如何创建 vuetify 工具栏链接下拉菜单?

加载和渲染时对象值上的 Vue.js 未定义错误

我可以使用 vue.js v-if 来判断值是否存在于数组中

如何在 Vue 3 中使用 SSR

Axios-一次发出多个请求(vue.js)

从 vue.js 中的 store 获得的计算(computed)属性的设置器

Vuetify 数据表不显示数据

如何在 Vue.js 插槽范围内传递方法

错误:找不到模块'@vue/babel-preset-app'

Vuetify 离线文档

使用 vue.js 获取调用元素