当前位置: 首页 > news >正文

响应式食品企业网站网站的外链是什么

响应式食品企业网站,网站的外链是什么,网站单页模板怎么安装,做视频网站需要哪些手续背景: 在内网搭建的服务, 由于https证书问题, 可能会被chrome浏览器提示不安全 此时, 默认的记住账号密码功能就无法使用, 那么此时只能手动输入了吗? 想到了几种方案 1.利用外置软件, 模拟按键输入(比如按键精灵, 缺点是依赖外部软件, 运行速度也慢, 且执行时占用了输入焦…

背景: 在内网搭建的服务, 由于https证书问题, 可能会被chrome浏览器提示不安全

此时, 默认的记住账号密码功能就无法使用, 那么此时只能手动输入了吗?

想到了几种方案

1.利用外置软件, 模拟按键输入(比如按键精灵, 缺点是依赖外部软件, 运行速度也慢, 且执行时占用了输入焦点)

2.使用js在进入登录页后, 修改user_name元素的value(常规网站都好使, 用浏览器插件如油猴执行即可)

写法如下

$(".userName").attr("value", "test_user_9527"); // 填你的用户名

3.有些网站直接修改user_name就不好使了, 由于本人不熟前端React

因此想到了, 直接拦截所有发送请求, 针对具体登录地址替换user_name

实现的效果是随便输入字符都可以替换成指定的账号, 不用再去记住账号

以下是完整的油猴插件 js代码

// ==UserScript==
// @name        自动填账号
// @namespace   Violentmonkey Scripts
// @match       https://localhost:8080/test/login
// @grant       none
// @version     1.0
// @author      -
// @require      https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js
// ==/UserScript==(function() {function waitForElement(selector, callback) {var element = $(selector);if (element.length) {// 元素已经存在,直接执行回调callback(element);} else {// 元素不存在,等待其加载var observer = new MutationObserver(function(mutations) {mutations.forEach(function(mutation) {if ($(selector).length) {// 元素已添加到DOM中,执行回调callback($(selector));// 停止观察observer.disconnect();}});});// 配置观察器选项var config = { attributes: false, childList: true, characterData: false, subtree: true };// 选择目标节点var target = document.body;// 启动观察器observer.observe(target, config);}
}// 使用方法:
$(document).ready(function() {// 代理加载开关var proxySwitch = false;// 假设登录框是 class='userName'waitForElement('.userName', function(element) {// 当#yourElement加载完成后,这里的代码将被执行console.log("等待元素加载完成,执行回调函数");$(".userName").on("click", function() {// 代理只执行1次if(proxySwitch){console.log("proxySwitch: ", proxySwitch, "end...")return;}// ====拦截发送请求=======function interceptAndModifyRequest(request) {if (request.url === 'https://localhost:8080/test/user/login') {// 克隆请求以读取请求体let clonedRequest = request.clone();// 读取请求体return clonedRequest.text().then(body => {// 解析请求体let parsedBody = JSON.parse(body);// 修改 usernameif (parsedBody.params && parsedBody.params.username) {parsedBody.params.username = 'test_user_9527'; // 填你的用户名// 将修改后的请求体转换回字符串let newRequestBody = JSON.stringify(parsedBody);// 创建新的请求对象let newRequest = new Request(request.url, {method: request.method,headers: request.headers,body: newRequestBody,mode: request.mode,credentials: request.credentials,cache: request.cache,redirect: request.redirect,referrer: request.referrer,referrerPolicy: request.referrerPolicy,integrity: request.integrity});return newRequest;}return request;});}return request;}window.fetch = new Proxy(window.fetch, {apply: function (target, thisArg, argumentsList) {let request = argumentsList[0];// 如果请求是一个字符串,将其转换为 Request 对象if (typeof request === 'string') {request = new Request(request);}// 调用拦截器函数return interceptAndModifyRequest(request).then(modifiedRequest => {// 使用修改后的请求替换原始请求argumentsList[0] = modifiedRequest;return Reflect.apply(target, thisArg, argumentsList);});}});// ====拦截发送请求 end =======proxySwitch = true;});});
});})();

http://www.dtcms.com/a/499513.html

相关文章:

  • 【Protobuf】proto3语法详解1
  • 网站备案要做家居网站设计
  • VS2022+DirectX9之创建DirectX9设备
  • unordered_map和unordered_set的封装与简单测试
  • (Kotlin协程十六)try/catch 可以捕获子协程的异常吗?为什么?
  • 网站移动端怎么做的做外国网站怎么买空间
  • 图像的脉冲噪声和中值滤波
  • 3.4特殊矩阵的压缩存储
  • SpringAI+DeepSeek大模型应用开发
  • 递归-24.两两交换链表中的节点-力扣(LeetCode)
  • 【Java零基础·第12章】Lambda与Stream API
  • Qemu-NUC980(八):GPIO Controller
  • 外贸型企业网站建设开源商城源码
  • JS逆向-安全辅助项目Yakit热加载魔术方法模版插件语法JSRpc进阶调用接口联动
  • 使用IOT-Tree接入各种数据转BACnet模拟设备输出
  • 网站搭建说明北京海淀区是几环
  • 基于多模态AI技术的传统行业智能化升级路径研究——以开源AI大模型、AI智能名片与S2B2C商城小程序为例
  • 【C语言进阶】指针进阶_数组指针的使用,数组参数和指针参数
  • PySide6 控件插入日期时间(QDateTime)
  • 网站建设 jsp php垂直网站建设
  • 招商网站大全企业官方网站建设的流程
  • 征程 6 | 工具链如何支持 Matmul/Conv 双 int16 输入量化?
  • 【案例实战】鸿蒙分布式调度:跨设备协同实战
  • 中英文网站设计网站开发投标文件
  • Langgraph译文1:让AI自主决策的代理架构
  • 如何让百度能查到自己衡阳专业的关键词优化终报价
  • 为什么.NET的System.IO.Compression无法解压zlib流
  • 微信小程序:日常零售供应系统
  • 安卓如何查看settings是被哪个进程更新的?相关dumpsys命令剖析
  • 网络营销方式案例分析郑州网站优化推广