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

低价建站在哪里买建网站费用

低价建站在哪里买,建网站费用,wordpress评论提交特效,湘潭网站建设 真好磐石网络一、业务需求 由第三方认证中心将 token 放在 header (请求头) 中跳转系统,前端获取到第三方系统携带 header 中的 token。 二、 业务流程 模拟第三方应用 CUSTOM-USERTOKEN 是第三方的 tokenproxy_pass 是我们的前端地址 server {listen 12345;server_name loca…

一、业务需求

由第三方认证中心将 token 放在 header (请求头) 中跳转系统,前端获取到第三方系统携带 header 中的 token。

二、 业务流程

image.png

模拟第三方应用
  • CUSTOM-USERTOKEN 是第三方的 token
  • proxy_pass 是我们的前端地址
  server {listen 12345;server_name localhost;location / {proxy_set_header Host $host:$server_port;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Real-Port $remote_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header CUSTOM-USERTOKEN 'MY-TOKEN'proxy_pass http://127.0.0.1;}}
前端静态代理
  • backend 是后端服务地址
  • 80 是前端代理端口
  server {listen 80;server_name localhost;location / {root /vuepress/docs;index index.html;try_files $uri $uri/ /index.html;}error_page 405 =200 $uri;}

三、处理方式

由于放在 header 中的内容,前端只有从 XHR 请求中才能拿到,所以直接打开页面时,肯定是无法拿到 header 中的 token 的,又因为这个 token 只有从第三方系统中跳转才能携带,所以也无法通过请求当前页面去获取 header 中的内容。

一、通过后端重定向

在 nginx 代理中,第三方请求从原本跳转访问前端的地址改为后端地址,
因为后端是可以从请求总直接拿到 header,所以这时由后端去处理 token ,在重定向到前端。

  • 后端可以设置 cookie,前端从 cookie 中获取
  • 后端可以拼接 URL, 前端从 url 中获取
  • 后端可以通过缓存 cookie, 重定向到前端后发请求获取 token
模拟第三方应用
  • 第三方应用由跳转前端改为跳转后端接口
  server {listen 12345;server_name localhost;location / {proxy_set_header Host $host:$server_port;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Real-Port $remote_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header CUSTOM-USERTOKEN 'MY-TOKEN'proxy_pass http://backend/token;}}
前端静态代理
  • 前端代理不需要做任何处理
  server {listen 80;server_name localhost;location / {root /vuepress/docs;index index.html;try_files $uri $uri/ /index.html;}error_page 405 =200 $uri;}

二、通过 nginx 重定向 URL

在 nginx 代理中,新增一个 /token 的代理地址,用于转发地址,第三方请求从原本跳转访问前端的地址,改为 /token 代理地址
因为 nginx 中是可以获取 header 中的内容的,所以这时由 /token 处理拼接好 url ,在重定向到前端。

Pasted image 20230412231934.png

模拟第三方应用
  • 第三方应用访问路径改为 http://127.0.0.1/token
  server {listen 12345;server_name localhost;location / {proxy_set_header Host $host:$server_port;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Real-Port $remote_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header CUSTOM-USERTOKEN 'MY-TOKEN'proxy_pass http://127.0.0.1/token;}}
前端静态代理
  • 新增 /token 代理,进行拼接 URL 后跳转
  server {listen 80;server_name localhost;location / {root /vuepress/docs;index index.html;try_files $uri $uri/ /index.html;}location /token {# 将 $http_custom_usertoken 拼接在 URL 中,同时重定向到前端# 前端通过 location.search 处理 tokenrewrite (.+) http://127.0.0.1?token=$http_custom_usertoken;}error_page 405 =200 $uri;}

三、通过 nginx 设置 Cookie

由于通过响应头中设置 Set-Cookie 可以直接存储到浏览器中,所以我们也可以通过直接设置 cookie 的方式处理。

Pasted image 20230412232652.png

模拟第三方应用
  • 此时第三方应用直接访问前端即可
  server {listen 12345;server_name localhost;location / {proxy_set_header Host $host:$server_port;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Real-Port $remote_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header CUSTOM-USERTOKEN 'MY-TOKEN'proxy_pass http://127.0.0.1;}}
前端静态代理
  • token 设置在 cookie
  server {listen 80;server_name localhost;location / {add_header Set-Cookie "token=$http_custom_usertoken;HttpOnly;Secure";root /vuepress/docs;index index.html;try_files $uri $uri/ /index.html;}error_page 405 =200 $uri;}

四、nginx 代理转发设置 Cookie

方法 三、通过 nginx 设置 Cookie 中,存在一个问题,由于此时在前端静态代理上添加 cookie,这就会导致所有静态资源都会携带 cookie, 这就会造成 cookie 中因为 path 不同而重复添加, 所以我们还可以通过造一层代理的方式处理这个问题

Pasted image 20230412231416.png

模拟第三方应用
  • 代理地址再次修改为 token
  server {listen 12345;server_name localhost;location / {proxy_set_header Host $host:$server_port;proxy_set_header REMOTE-HOST $remote_addr;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Real-Port $remote_port;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header CUSTOM-USERTOKEN 'MY-TOKEN'proxy_pass http://127.0.0.1/token;}}
前端静态代理
  • token 设置在 /token 代理地址的 cookie
  • /token 重定向到前端地址
  server {listen 80;server_name localhost;location / {root /vuepress/docs;index index.html;try_files $uri $uri/ /index.html;}location /token {add_header Set-Cookie "token=$http_custom_usertoken;HttpOnly;Secure";rewrite (.+) http://127.0.0.1;}error_page 405 =200 $uri;}
http://www.mfbz.cn/news/401/

相关文章:

  • 腹黑的网站骚动做图动态网站下载手机百度最新版
  • 网站 外包合同手机如何做网站
  • 哪些网站可以做商家百度统计官网
  • 山东seo网站直通车推广计划方案
  • 兼职网站做任务平台推广广告宣传词
  • 营销网站费用东莞搜索引擎推广
  • 可做商业用途的图片网站现在什么网络推广好
  • 监利网站建设盘多多网盘搜索
  • 青岛开发网站百度品牌
  • 资源下载类网站如何做外链品牌推广活动方案
  • 企业网站设计教程产品软文是什么
  • 如何查询网站以建设多长时间互联网怎么赚钱
  • 做美女网站犯法吗近期国际新闻
  • 西安政府网站建设现状南京seo关键词排名
  • 做网站找人个人网站创建平台
  • 公司网站建设步骤360优化大师安卓版下载
  • 只做硬件网站杭州seo推广公司
  • 做网站买二手域名网络营销的传播手段
  • 莱芜网站制作长春seo推广
  • 个人网站备案好麻烦哦最新引流推广方法
  • 教育类手机网站模板下载专业的网站建设公司
  • 四川城乡建设网站简述网络营销的方法
  • wordpress 在线客服代码说说seo论坛
  • 西安网站优化平台河北网络科技有限公司
  • 舟山手机网站建设附近电脑培训速成班一个月
  • 网站建设学校培训旺道seo工具
  • 小学网站logo怎么做网站优化推广的方法
  • 动态网站建设案例教程视频教程项目推广
  • 创业网站推广怎么做现在搜什么关键词能搜到网站
  • 合肥网站设计建设关键词优化推广公司排名