Youthink
V2EX  ›  jQuery

V2 的大神们帮我看看, JQuery 跨域请求遇到点问题

  •  
  •   Youthink · Apr 15, 2016 · 3811 views
    This topic created in 3707 days ago, the information mentioned may be changed or developed.

    问题地址:segmentfault

    谷歌找了一下,基本上都说改后台,但是别人家的后台,动不了啦。帮忙看看。

    22 replies    2016-04-16 21:30:45 +08:00
    abelyao
        1
    abelyao  
       Apr 15, 2016 via iPhone
    当然要对方的服务器允许你跨域请求才行。
    或者你不要在前端 AJAX 直接请求,加个后端例如 PHP 中转一下请求就行了。
    moro
        2
    moro  
       Apr 15, 2016
    原始需求是啥。
    cxbig
        3
    cxbig  
       Apr 15, 2016
    通常 JS 是不可以跨域名请求数据,如果对方方无法更改,最好还是在自己的后台做 API 请求对方数据
    sunjourney
        4
    sunjourney  
       Apr 15, 2016
    走后台或者 curl
    lianyue
        5
    lianyue  
       Apr 15, 2016
    GET 方法 才能 jsonp

    添加中间件 嗯 。中转下
    kirisetsz
        6
    kirisetsz  
       Apr 15, 2016
    你的浏览器 <---> Nginx <---> 那台服务器

    在 Nginx 做个反向代理加 CORS Headers 就行了
    realpg
        7
    realpg  
    PRO
       Apr 15, 2016
    @kirisetsz
    过两天他该问 nginx 服务器被那台服务器 ban 了怎么办……
    kirisetsz
        8
    kirisetsz  
       Apr 15, 2016
    @realpg 打电话给对面运维加白名单
    realpg
        9
    realpg  
    PRO
       Apr 15, 2016
    @kirisetsz
    我觉得他被对面运维报警抓起来才是正解……
    一看就是没授权的自己私自抓人家东西或者往人家站上提交数据……
    kirisetsz
        10
    kirisetsz  
       Apr 15, 2016
    @realpg 不要瞎猜,说不定是团队里前后端吵架呢……
    chac88
        11
    chac88  
       Apr 15, 2016
    @realpg
    学校网站吧? 不要吓唬小朋友,哈哈.

    既然不能改服务端
    找个后端中转下就可以了,

    第二种方法,使用七牛的 CDN,做镜像,再上传一个 crossdomain.xml,这样就跨域跨域了
    kirisetsz
        12
    kirisetsz  
       Apr 15, 2016
    @ty0716 crossdomain.xml 不是 Flash 用的…… 么。
    klesh
        13
    klesh  
       Apr 15, 2016
    中转是正解
    chac88
        14
    chac88  
       Apr 15, 2016
    @kirisetsz
    刚试了下.可以用.
    abelyao
        15
    abelyao  
       Apr 15, 2016
    @kirisetsz
    @realpg
    @ty0716

    看了一下楼主在 SF 的发帖,里面有网站的地址: http://222.206.65.12/
    估计是想搞个一键续借还是啥的吧……
    wuhuaji
        16
    wuhuaji  
       Apr 15, 2016   ❤️ 1
    - 后端没有跨域问题,所以前端无法跨域获取的数据可以通过后端取到,然后给前端。
    - 所谓这些跨域方法,本质还是需要对方服务器支持,不然无法跨域成功。
    详细原理可以看我的博文: http://whj.site/post/qian-duan/kua-yu-de-ji-ge-wen-ti
    Slienc7
        17
    Slienc7  
       Apr 16, 2016
    后端再封装出一个接口出来;前端没有这个功能。
    domino
        18
    domino  
       Apr 16, 2016 via Android
    The YQL (Yahoo! Query Language) platform enables you to query, filter, and combine data across the web through a single interface. It exposes a SQL-like syntax that is both familiar to developers and expressive enough for getting the right data.
    junnplus
        20
    junnplus  
       Apr 16, 2016
    熟悉的 id
    junnplus
        21
    junnplus  
       Apr 16, 2016
    建议这个功能还是走后端比较好,计划任务之类的。
    ayiis
        22
    ayiis  
       Apr 16, 2016
    动得了的,人不能吊死在一颗树上啊
    你看这里 http://www.wooyun.org/bugs/wooyun-2014-085980

    别,干坏事,:P

    建议楼主联系学校网管,就说帮忙修复网站漏洞,然后找准机会抱他大腿就行了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   948 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 82ms · UTC 19:52 · PVG 03:52 · LAX 12:52 · JFK 15:52
    ♥ Do have faith in what you're doing.