使用sign签名发送请求
import CryptoJS from "crypto-js";
import urlencode from "urlencode";
methods:{
async initUser () {
try {
const url = "/api/info/self";
let _param = {
uid: this.uid,
utoken: this.token,
version: "1.0",
ak: "test",
ts: new Date().getTime(),
nonce: "1234567890"
}
let sortData = {}
let str = ""
Object.keys(_param).sort().map(key => {
sortData[key] = _param[key]
str += (key + "=" + sortData[key] + "&")
})
let result = CryptoJS.HmacSHA1(str.substring(0, str.length - 1), "1rtncba857db7gg5a0e63edb4");
console.log(result)
let sig = result.toString();
sig = encodeURI(sig);
sig = urlencode(sig);
sortData.sign = sig
const { data: res } = await this.$http[0].get(
url,
{
params: sortData,
},
);
console.log(res.data);
} catch (err) {
console.dir(err);
}
}
使用sign签名发送请求的更多相关文章
- 【接口安全】接口合法性验证加密验签SIGN 签名规则
在对接API接口时,接口地址和参数结构都很容易被黑客抓包,从而模拟发送请求. 考虑到安全性,防止别人冒名调用,要对接口请求进行合法性验证. 基本原理如下 双方约定 APPID:参与签名和网络传输 AP ...
- Python接口测试实战2 - 使用Python发送请求
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- APP开放接口API安全性——Token令牌Sign签名的设计与实现
在APP开放接口API的设计中,避免不了的就是安全性问题. 一.https协议 对于一些敏感的API接口,需要使用https协议.https是在http超文本传输协议加入SSL层,它在网络间通信是加密 ...
- python笔记44-HTTP对外接口sign签名
前言 一般公司对外的接口都会用到sign签名,对不同的客户提供不同的apikey ,这样可以提高接口请求的安全性,避免被人抓包后乱请求. sign签名是一种很常见的方式 sign签名 签名参数sign ...
- 对飞猪H5端API接口sign签名逆向实验
免责声明 本文章所提到的技术仅用于学习用途,禁止使用本文章的任何技术进行发起网络攻击.非法利用等网络犯罪行为,一切信息禁止用于任何非法用途.若读者利用文章所提到的技术实施违法犯罪行为,其责任一概由读者 ...
- 爬虫模块介绍--request(发送请求模块)
爬虫:可见即可爬 # 每个网站都有爬虫协议 基础爬虫需要使用到的三个模块 requests 模块 # 模拟发请求的模块 PS:python原来有两个模块urllib和urllib的升级urlli ...
- API:Sign签名的执行流程
Sign签名存在目的:为了防止不法分子修改参数数据,进而攻击服务器,导致数据泄露或从中获得利益 例如:一个接口是用户把积分转帐给他的朋友,修改后,变为转帐到攻击者的帐户,这样,攻击者就能得到利益 ...
- 带"签名"的请求接口实现
废话少说,直接上代码(⊙﹏⊙) class Program { //签名证书 public static X509Certificate2 cerSigneCert; private static c ...
- HttpClient 发送请求和参数
发送请求 没有参数 private static void getData() { String timeStamp = String.valueOf(System.currentTimeMillis ...
随机推荐
- layui处理表单/按钮进行多次提交
在一个项目中,我们最频繁的操作是CRUD,所以一定有涉及到按钮的操作.比如:确认保存,确认编辑,确认删除等等.所以,为了避免表单进行多次提交就显得特别地重要. 代码实现 知识点 $(':button' ...
- 在网页添加 Live2D 看板娘
只需要将以下代码粘贴到 标签中即可 <!--看板娘--> <script src="https://cdn.jsdelivr.net/npm/jquery/dist/jqu ...
- 【小技巧】Eclipse 中创建Maven项目后没有WEB-INF文件夹以及web.xml文件
懒得截图了,一张图配下面步骤搞定. 1.右键项目,选择propertities后选择图中①(被遮住了): 2.先不②勾选去掉,点击Apply:然后在把②处勾选上.此时④位置会出现东东,点击蓝色超链接. ...
- SpringBoot简单尝试
一.spring boot核心 配置在类路径下autoconfigure下(多瞅瞅) @SpringBootApplication里的重要注解(@Configuration,@EnableAutoCo ...
- Windows反调试技术(上)
写在前面 在逆向工程中为了防止破解者调试软件,通常都会在软件中采用一些反调试技术来防破解.下面就是一些在逆向工程中常见的反调试技巧与示例. BeingDebuged 利用调试器加载程序时调试器会通过C ...
- slickgrid ( nsunleo-slickgrid ) 8 区域选择与复制粘贴
区域选择 区域选择是通过插件CellRangeSelector实现的,默认不支持跨冻结列进行选择,修正了选择,支持跨冻结列,代码如下,通过判断选择的起点和终点所落在的冻结范围进行计算,如从左往右进行复 ...
- java基础——初识面向对象
面向对象 面向过程&面向对象 面向过程思想 步骤请简单:第一步做什么,第一步做什么 面向过程适合处理一些较为简单的东西 面向对象思想 物以类聚,分类的思维模式,思考的问题首先会解决问题需要哪些 ...
- centos7基于luks对磁盘进行加密
centos7基于luks对磁盘进行加密 1,504 views A+ 所属分类:linux 收 藏 LUKS(Linux Unified Key Setup)为Linux硬盘加密提供了一种标准,它 ...
- :整数 跳转到该行 Vim中常用的命令
:set nu 显示行号 :set nonu 不显示行号 :命令 执行该命令 :整数 跳转到该行 :s/one/two 将当前光标所在行的第一个one替换成two :s/one/two/g 将当前光标 ...
- 文本编辑_Vim&Vi
一.Vim.Vi文本编辑器 1️⃣:vi: Visual Interface,文本编辑器 2️⃣:文本:ASCII, Unicode 3️⃣:VIM - Vi IMproved 二.Vim.vi的特点 ...