首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【玩转腾讯云】静态网站利用SCF+API访问自定义后端接口

创建API gateway,后台指定调用步骤1建好的云函数。 API gateway中新建密钥,使用计划,实现访问控制并发布。 写前端页面,调用刚写好的API。 测试,解决各种bug,大功告成!...建议加上传入参数检查和限制,毕竟我们不知道调用接口的人会传些什么奇怪的东西。返回类型包装成json格式,对前端调用更友好。...前端调用 配置完后端服务后,要解决的就是访问的问题了。由于没钱供服务器,用的是静态页面托管的方式建的站。前端直接ajax访问API来获取结果。...= CryptoJS.HmacSHA1(signStr, SecretKey) sign = CryptoJS.enc.Base64.stringify(sign) sign = auth + sign...error } }) } 如果在前面创建API gateway的service时候没有指定自定义域名,或是自定义域名和调用页面的域名不是同一个,就会涉及到跨域的问题。

1.4K44
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【JS 逆向百例】网洛者反爬练习平台第四题:JSFuck 加密

    JSFuck 解混淆方法 JSFuck 在调用方法时通常都是通过 Function(xxx)() 和 eval(xxx) 的形式来执行,因此 JSFuck 常见解混淆的方式如下: 使用在线工具直接解密,...如前面 alert(1) 的混淆代码,复制最外层最后一个括号内的内容到浏览器,就可以看到源代码: [02.png] 逆向参数 逆向的目标主要是翻页接口 _signature 参数,调用的加密方法仍然是...window.get_sign(),和前面几题是一样的,本文不再赘述,不清楚的可以去看 K 哥上期的文章。...@Software: PyCharm # ================================== import execjs import requests challenge_api..."_signature": get_signature() } response = requests.post(url=challenge_api

    1.2K20

    【JS 逆向百例】如何跟栈调试?某 e 网通 AES 加密分析

    [01.png] 参数逆向 sign 首先来看一下请求头的 sign,尝试直接搜索一下,发现并不是经过某些请求返回的数据,观察一下其他请求,可以发现同样有 sign,而且每次请求的值都不一样: [02....在此函数埋下断点,可以在右侧的 Call Stack 看到调用栈,从下到上,表示的是点击登陆后,先后调用的函数的执行过程: [06.png] 想要找到具体的加密位置,我们就要依次往前找,挨个函数进行分析...,是看不出来有加密函数的,这种情况下就需要我们注意参数的变化情况,如果在这个调用栈看到的是加密后的参数,在上一个调用栈里面看到的是明文的参数,那么加密的操作必定在这两个调用栈之间,埋下断点,仔细分析即可...key = CryptoJS.enc.Utf8.parse("20171109124536982017110912453698"); const iv = CryptoJS.enc.Utf8.parse...: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return encrypted.ciphertext.toString

    1.1K30

    【JS 逆向百例】网洛者反爬练习平台第三题:AAEncode 加密

    放到浏览器里面去直接执行就可以看到源码; 在线调试,在 AAEncode 代码第一行下断点,然后一步一步执行,最终也会在虚拟机(VM)里看到源码; 逆向参数 逆向的目标主要是翻页接口 _signature 参数,调用的加密方法仍然是...window.get_sign(),和前面两题是一样的,本文不再赘述,不清楚的可以去看 K 哥上期的文章。...除了直接去掉 ('_') 运行以外,我们还可以在混淆代码第一行下断点,然后单步跟进,最后同样也会得到源码,如下图所示: [06.png] [07.png] 观察一下代码,有一个 Hook window.sign...语句设置一些 key 之类的参数,重点是 try-catch 语句,下断点看看实际是走的哪条语句: [08.png] 其他逻辑我们并不用关心,直接把 try 语句 copy 出来,不让它走异常即可,DES 直接调用...(key); var encrypted = CryptoJS.DES.encrypt(message, keyHex, { mode: CryptoJS.mode.ECB,

    68910

    前后端分离 , 如何保证接口安全性 ?

    ,不知道以怎样的顺序拼接在一起的,最重要的是不知道签名字符串中的key是什么,所以黑客可以篡改参数的值,但没法修改sign的值,当服务器调用接口前会按照sign的规则重新计算出sign的值然后和接口传递的...当同一个请求第二次访问时会先检测redis是否存在该sign,如果存在则证明重复提交了,接口就不再继续调用了。...解决办法: 前端在调用接口前随机生成一个字符串,然后通过rsa公钥进行加密处理,将加密结果放入到请求头中key , 然后将随机生成的字符串 — key , 参与sign的生成,最后进行接口的调用。...使用流程 前端随机生成一个字符串,然后通过rsa公钥进行加密,将加密结果放入到请求头中 key = 加密结果(key) 客户端携带参数 nonce(随机数)、ts、sign去调用服务器端的API token...将 token , sign , ts , nonce , 加密后的key —> 放入到请求头中访问后端 sign的作用是防止参数被篡改,客户端调用服务端时需要传递sign参数,服务器响应客户端时也可以返回一个

    2.6K80

    postman系列(十):发送携带md5签名、随机数等参数的请求

    完整请求为: http://api.fanyi.baidu.com/api/trans/vip/translate?...,下面进入正题,介绍如何在postman中生成随机数、md5签名,然后调用 1.首先要在Pre-request Script标签中编写脚本 因为要自动生成随机数、md5签名等传给接口,然后调用接口,...密钥组合成一个字符串 var str = appid + query + salt + secretKey; console.log(str); //将str进行md5加密 var strmd5= CryptoJS.MD5...(str).toString(); //let md5Str = CryptoJS.MD5(str).toString(); console.log(strmd5); pm.environment.set...("sign", strmd5); //将加密后的签名设置为环境变量方便后续调用 postman的params中按照如下方式引用 调用成功的话就是下面这个样子 编后语 至此,postman系列基本上就结束了

    2.1K20

    【开源三方库】crypto-js加密算法库的使用方法

    • 易于使用的 API:crypto-js 提供了简单易用的 API,使开发人员能够轻松地在 应用程序中执行加密和解密操作。它提供了直观和一致的方法和选项,使加密操作变得更加方便和灵活。...`1.OpenHarmony开发基础2.OpenHarmony北向开发环境搭建3.鸿蒙南向开发环境的搭建4.鸿蒙生态应用开发白皮书V2.0 & V3.05.鸿蒙开发面试真题(含参考答案) 6.TypeScript...' //第二步在需要使用到md5的业务逻辑,调用md5算法 var hash = CryptoJS.MD5("123456") //传参是需要加密的内容,返回值是加密后的数据4.  ...var key = 'secret key 1234' //第三步在需要使用AES加密的业务逻辑,调用AES加密 var encrypted = CryptoJS.AES.encrypt('hello...world', key).toString() //传参为加密内容及秘钥 //第四步在需要把上面的加密块解密的业务逻辑,调用AES解密,注意key必须相同 var decrypted = CryptoJS.AES.decrypt

    35710

    使用Postman玩转腾讯云

    简介 产品上云,那么作为产品的开发人员,其中一项重要的工作就是调用云厂商提供的API接口,来使用云产品。俗话说,工欲善其事,必先利其器。为了上云更轻松,我们需要一把利器来调用云厂商的API接口。...接下来本文就向你介绍如何使用Postman这个API测试利器,来调用腾讯云API的接口,让你轻松玩转腾讯云。 2. Postman介绍 Postman是一个API开发协作平台。...Postman调用腾讯云API 腾讯云API,可以使开发者简单快捷地使用腾讯云产品。相比与web控制台,API更直接高效。...我们可以充分利用Postman变量和脚本功能,用其调用腾讯云的API,来使用云服务器、批量计算、弹性伸缩等全部云服务。 3.1.....parse(msg); var hash_str = CryptoJS.HmacSHA256(utf8_str, key); return hash_str; } function sign_hmac256

    5K73

    一个测试工程师的实战笔记:我是如何在Postman和Apipost之间做出选择的?

    password", CryptoJS.MD5("123456").toString());每个新同事看到这一坨代码都要问:"这个CryptoJS是内置的吗?...pm.request.body.raw);let sorted = {};Object.keys(body).sort().forEach(k => sorted[k] = body[k]);let sign...= CryptoJS.HmacSHA256(JSON.stringify(sorted), secret).toString();pm.environment.set("token", sign);每次看到满屏的...步点击 新人学习成本 30分钟 3分钟 跨接口复用 需复制脚本 自动继承 2、 智能签名生成当处理复杂签名时,Apipost的代码精简度惊艳到我:// 同样的签名逻辑let sign...通过两个工具的对比实践,我认为优秀的API测试工具应该具备:分层设计:既有可视化操作,也开放代码层深度定制场景感知:自动识别加密需求推荐处理方案协议包容:不强迫开发者为了不同协议切换工具数据主权:允许自主选择数据存储位置很高兴看到

    10800

    Angular2 VS Angular4 深度对比:特性、性能

    它由Traceur编译器(结合ES6)进行处理,然后生成ES5代码,并使用TypeScript语法创建运行时类型断言。...提升依赖注入(DI): 依赖注入(一种程序设计模式,可以通过依赖关系实现调用,而不需要生成)是一种Angular显著区别于其竞争对手的特性。...通过在DI库中提供基本信息(可以调用函数或创建类的实例来检查相关元数据),从而简化了对象实例的构建。通过提供注入注释,使得参数信息重写也变得简单。...Angular4 Angular4 的特性和性能 相比于Angular 2,Angular4的功能列表中添加了许多新功能,同时还有一些旧功能的改进。...TypeScript 2.1和2.2兼容性: Angular4开发组将Angular升级为更新版本的TypeScript。这将提高ngc的速度,方便开发人员将在编码过程中更好的进行类型检查。

    9.8K20
    领券