您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
从json数据中取值单独放一份到localStorage中
当前为
- // ==UserScript==
- // @name imes token refresh
- // @namespace http://tampermonkey.net/
- // @version 0.2
- // @description 从json数据中取值单独放一份到localStorage中
- // @author niushuai233
- // @run-at document-start
- // @match *://*.nti56.com/*
- // @require https://unpkg.com/ajax-hook@2.0.3/dist/ajaxhook.min.js
- // @require https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- var localStorage = window.localStorage;
- var token = localStorage.getItem('pro__Access-Token');
- var imestoken = '根据key[pro__Access-Token]未找到[token]'
- if (token && token.length > 0) {
- imestoken = JSON.parse(token).value;
- }
- localStorage.setItem('imes_token', imestoken);
- console.log('imes token refresh success', imestoken);
- var code_url = '/ils/sys/getCheckCode';
- var isCodeUrl = false;
- ah.proxy({
- //请求发起前进入
- onRequest: (config, handler) => {
- var url_arr = config.url.split("?")
- console.log(url_arr, new Date().toLocaleString())
- if (code_url == url_arr[0]) {
- isCodeUrl = true
- }
- handler.next(config);
- },
- //请求发生错误时进入,比如超时;注意,不包括http状态码错误,如404仍然会认为请求成功
- onError: (err, handler) => {
- console.log(err.type)
- handler.next(err)
- },
- //请求成功后进入
- onResponse: (response, handler) => {
- var res = response.response;
- if (isCodeUrl) {
- res = JSON.parse(res);
- autoFillCode(res.result.code);
- isCodeUrl = false
- }
- handler.next(response)
- }
- })
- function autoFillCode(code) {
- const usernameInput = document.querySelector('input[id=inputCode]')
- const button = document.querySelector('.login-button')
- const event = document.createEvent('HTMLEvents')
- event.initEvent('input', false, true)
- usernameInput.value = code // 修改用户名输入框的值
- usernameInput.dispatchEvent(event) // 手动触发输入框的input事件
- button.click() // 触发按钮点击事件
- }
- })();