V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
4ever911
V2EX  ›  Python

Flask iframe 加载时碰到奇怪问题

  •  
  •   4ever911 · 2018-09-26 10:28:56 +08:00 · 2737 次点击
    这是一个创建于 2249 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我想在一个 Flask 项目里面嵌入实时股票 Chart,在网上找到 Investing.com 以 iframe 方式提供这种 widget https://www.investing.com/webmaster-tools/technical-charts

    于是,我随便生成一个 QQQ 的 k 线图,Investing 给我的代码如下:

    <iframe height="800" width="600" src="https://ssltvc.forexprostools.com/?pair_ID=651&height=800&width=600&interval=86400&plotStyle=candles&domain_ID=1&lang_ID=1&timezone_ID=7"></iframe>
    

    我把这个代码随便嵌到一个网站里面没问题,比如: https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_iframe 这个里面替换 iframe,可以正确显示。

    flask 代码在本地跑的时候,以 127.0.0.1 跑,显示域名不对,于是我换成 localhost,可以显示。但是显然我这个程序是需要跑在服务器上的。我把代码拷贝到云主机,在云主机里面跑的时候,显示 504 Gateway Error, 但是单独把 src 输入地址栏又可以打开。会是什么问题呢?

    把 src 换成 baidu,google 之类的,也没问题。

    Flask 代码如下:

    from flask import Flask, render_template
    
    app = Flask(__name__)
    
    @app.route("/")
    def Index():
        return render_template('index.html')
    
    app.run('0.0.0.0', 80)
    

    template/index.html 代码如下:

    <html>
      <head><title>Test</title></head>
    <body>
    
    
    <div>
    <iframe height="800" width="600" src="https://ssltvc.forexprostools.com/?pair_ID=651&height=800&width=600&interval=86400&plotStyle=candles&domain_ID=1&lang_ID=1&timezone_ID=7"></iframe>
    </div>
    
    
    </body>
    </html>
    
    15 条回复    2018-09-26 14:29:49 +08:00
    4ever911
        1
    4ever911  
    OP
       2018-09-26 12:50:36 +08:00
    有人能解决吗, ¥666 外包
    gettext
        3
    gettext  
       2018-09-26 13:25:00 +08:00
    用这个
    panzhc
        4
    panzhc  
       2018-09-26 13:35:38 +08:00
    是不是因为模版文件没有放在 templates 目录下?
    4ever911
        5
    4ever911  
    OP
       2018-09-26 13:46:22 +08:00
    @gettext 谢谢,我测试一下先,因为我要复用,会经常修改 pair_id,不知道里面其他参数是否能复用,比如 carrier, 等,我先试下。。。
    4ever911
        6
    4ever911  
    OP
       2018-09-26 13:46:35 +08:00
    @panzhc 在 templates 下面
    4ever911
        7
    4ever911  
    OP
       2018-09-26 13:57:44 +08:00
    @gettext 麻烦发我你的支付宝账号,我给你转账。

    你这个 src 是怎么得到的?我之前在本机上跟踪浏览器的调用,没有访问 cdn,另外,请问 carrier 从哪里得? time 应该就是一个 timestamp 吧。不知道能复用多久。
    gettext
        8
    gettext  
       2018-09-26 14:15:37 +08:00
    4ever911
        9
    4ever911  
    OP
       2018-09-26 14:18:53 +08:00
    @gettext Please complete payee's name [ ] shi xiang ? 姓?
    gettext
        10
    gettext  
       2018-09-26 14:19:20 +08:00
    @4ever911 右键查看 “页面源代码”
    gettext
        11
    gettext  
       2018-09-26 14:19:44 +08:00   ❤️ 1
    gettext
        12
    gettext  
       2018-09-26 14:24:30 +08:00
    @4ever911 Received. Thank you!
    4ever911
        13
    4ever911  
    OP
       2018-09-26 14:25:34 +08:00
    @gettext 回头不能用了找你售后,哈哈。加我微信 cTQwNTAxOA==
    4ever911
        14
    4ever911  
    OP
       2018-09-26 14:26:31 +08:00
    @gettext 另外,可以从 iframe 那边解决吗? 否者感觉需要自己 request,取这些参数再修改内容。很麻烦。
    gettext
        15
    gettext  
       2018-09-26 14:29:49 +08:00
    @4ever911 iframe 这个我看下,wechat 已加
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2274 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 16:07 · PVG 00:07 · LAX 08:07 · JFK 11:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.