本地跨域问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容 style type="text/css"> #Wrapper { background-color: #e2e2e2; background-image: url("/static/img/shadow_light.png"), url("//cdn.v2ex.com/assets/bgs/circuit.png"); background-repeat: repeat-x, repeat-x; } #Wrapper.Night { background-color: #1f2e3d; background-image: url("/static/img/shadow.png"), url("//cdn.v2ex.com/assets/bgs/circuit_night.png"); background-repeat: repeat-x, repeat-x; background-size: 20px 20px, 162.5px 162.5px; }
yukinotech
V2EX    程序员

本地跨域问题

  •  
  • &nbs; yukinotech 2021-04-22 01:48:55 +08:00 2768 次点击
    这是一个创建于 1637 天前的主题,其中的信息可能已经有所发展或是发生改变。
    需求:自己写了一个脚本,想在手机上用,类似 index.html,有 gui 。问题是浏览器安全策略导致所有跨域请求都发不出去。

    目前只想到 2 个解决办法:
    1 、自己写一个 native apk,绕过去

    2 、下载一个低版本,或者可以自定义安全策略的浏览器

    个人移动端浏览器可 diy 性好低,基本也装不了插件。看看有没有 dalao 有什么想法
    14 条回复    2021-04-30 18:22:36 +08:00
    eason1874
        1
    eason1874  
       2021-04-22 02:53:41 +08:00
    你 2 个方法都避开了常规做法。

    直接解决跨域问题就行了,如果请求站点在自己控制范围可以设置 Access-Control-Allow-Origin 头,如果是第三方站点可以在本地配置一个反代。
    rain0002009
        2
    rain0002009  
       2021-04-22 08:42:29 +08:00
    然而已经有了这么一个 app 叫 dorajs
    5200
        3
    5200  
       2021-04-22 09:34:17 +08:00
    1. nginx 添加反向代理
    2. 了解一下 cors 策略
    yukinotech
        4
    yukinotech  
    OP
       2021-04-22 12:15:24 +08:00
    @eason1874 统一回复一下,后端服务不是自己的,抓的 api
    yukinotech
        5
    yukinotech  
    OP
       2021-04-22 12:24:49 +08:00
    @5200 户外使用,除非安卓端能起一个 nginx 或者类似 nginx 的本地代理转发。如果有这样的软件,辛苦分享一下
    AV1
        6
    AV1  
       2021-04-22 14:25:06 +08:00
    后端不是自己的话,只能做成 APP,或者用自己的服务器转发。
    no1xsyzy
        7
    no1xsyzy  
       2021-04-22 15:50:19 +08:00
    你的前端放在静态空间?
    简单点,直接搞个 native,不要用网页。
    直接用别人的 API 会不会被找上门?
    fjc0k
        8
    fjc0k  
       2021-04-22 17:28:10 +08:00   1
    搞成小程序,开发版把所有校验关掉就行了。
    5200
        9
    5200  
       2021-04-22 18:33:43 +08:00
    如果你没有服务器
    1. 写一个 apk 。
    2. 使用免费服务器,挂 https://github.com/Rob--W/cors-anywhere,可以 index.html 走接口解决跨域。
    如果有服务器
    那都不是问题。

    楼主可以说明一下手上现有的资源。
    只是单纯请求 api 接口,你直接用 Auto.js 之类的更方便。
    longgediyi999
        10
    longgediyi999  
       2021-04-23 14:26:47 +08:00
    https://www.npmjs.com/package/jsonp 起个服务器就可以
    SmiteChow
        11
    SmiteChow  
       2021-04-23 15:48:49 +08:00   1
    我有新式解法,跨域安全策略可以用浏览器插件 https://mybrowseraddon.com/access-control-allow-origin.html 解决

    你可以写个简单的 html 页面配合这个插件就可以了

    但这个插件只能在 PC 端使用,而你要在移动端使用那就需要 [代理] 了,绕不过去的

    如果你没有云服务器作代理或者不愿意搞后端那堆东西,那就用你的 PC 前端页面做代理,这个时候 p2p 就上场了

    需要用到 https://www.npmjs.com/package/dshell 分布式浏览器动作流框架,改造 html 页面跨域 fetch 逻辑封装成 action

    移动端就可以通过 PC 端远程执行 action 获取数据了
    yukinotech
        12
    yukinotech  
    OP
       2021-04-30 18:16:52 +08:00
    已用 native 实现 ,此贴完结
    yukinotech
        13
    yukinotech  
    OP
       2021-04-30 18:19:11 +08:00
    @SmiteChow 感谢分享,拓展了视野
    td width="48" valign="top" align="center">yukinotech
        14
    yukinotech  
    OP
       2021-04-30 18:22:36 +08:00
    @fjc0k 这个思路可以有,感谢分享
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     952 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 19:44 PVG 03:44 LAX 12:44 JFK 15:44
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86