Hanasaki
Hanasaki
前端的代码里全部是用axios请求的,改为类似下面的代码 ```js await axios.post(activity_api, { uf: userParams.uf, _d: userParams._d, vc3: userParams.vc3, uid: userParams._uid }, {headers: { 'Authorization': 'xxxxx' }}) ```
在 Start.js, DashBoard.js 中都有类似这种,搜索一下 axios关键字,应该可以查到每一个用到的地方,逐个改一下就好了。 不过建议先别急,我正在升级项目,改用ts写,代码可能有些变动 
代码改为: ```js app.use(async (ctx, next) => { if (ctx.header.authorization !== '123456') { ctx.body = '无权访问' return } else await next() }); ```
我忘添加允许 Authorization 请求头了... 跨域那部分代码,改成这样: ```js app.use(async (ctx, next) => { ctx.set("Access-Control-Allow-Origin", "*") ctx.set("Access-Control-Allow-Headers", "Content-Type") ctx.set("Access-Control-Allow-Headers", "Authorization") await next() }) ```
今晚有点晕乎,写代码写傻了。刚把UI仓库更新~
访问控制那部分代码改为 ```js app.use(async (ctx, next) => { ctx.set("Access-Control-Allow-Origin", "*") ctx.set("Access-Control-Allow-Headers", "Content-Type, Authorization") await next() }) ``` 睡觉!
写的不对,不是 ` 'Authorization: 000'` ,是 ` 'Authorization': '000'` 
前端一切都是暴露出来的,只要用户要通过前端和后端交互,无论经过什么中转还是加密,都在浏览器进行,一切都能被看到。 想要别人无法调用你的接口,可以限定IP地址,比如在公司内网才能访问某些服务。其他什么转发、加一些特征字段来鉴权,都是只能增加接口被别人调用的难度,没有办法避免。这个项目,就是模拟了浏览器对学习通接口请求,再怎么转发再怎么加密字段,都是代码写出来的,都能照着模拟出来,没有办法阻止。
@CodeTty 如果需要关闭自动更新,请修改项目根目录的 `package.json` 文件,该文件中的 `scripts` 部分如图。  将`scripts`内容修改为如下,将只运行,不更新。 ```json "start": "node ./build/index.js", ``` 请务必经常手动更新,以下是强制更新命令: ```bash git fetch --all git reset --hard origin/main ```
> 因为在我试图用老方法停止更新时,导致不能运行这 和老方法一样修改。不能运行的情况,不应该出现。仔细检查是否修改正确