1

このチュートリアルに従ってFlask-WebSockets、アプリで試して使用しています。

http://blog.miguelgrinberg.com/post/easy-websockets-with-flask-and-gevent

私の問題は、サーバーに正しく接続する方法がわからないことです。

フラスコアプリを呼び出すと、次の形式になります。

http://localhost:80/myapp/<route_goes_here>

私のアプリは次のように構成されています。

couponmonk/venv/couponmonk
    __init__.py
    views.py
    templates/
        index.html

__init__.py

from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
from sqlalchemy.orm import sessionmaker
from sqlalchemy import *
from flask.ext.socketio import SocketIO, emit       

app = Flask(__name__)    
socketio = SocketIO(app)                                                                                                                             
engine =  create_engine('mysql://root:my_password@localhost/my_db_name') 
DBSession = sessionmaker(bind=engine)

import couponmonk.views

ビュー.py

from couponmonk import app, DBSession, socketio

@socketio.on('my event', namespace='/test')
def test_message(message):
    emit('my response', {'data': message['data']})


@app.route('/', methods = ['GET'])
def index():
    return render_template('index.html')

私のセットアップを考えると、この行をどこに置くべきですか:

if __name__ == '__main__':
    socketio.run(app)

の次の行にどのアドレスを入力すればよいかもわかりませんindex.html

index.html

このファイルのコードはこれと同じです ( https://github.com/miguelgrinberg/Flask-SocketIO/blob/master/example/templates/index.html )

var socket = io.connect('what to put here?');

試してみましたがhttp://localhost:80/test、応答がありません。namespaceが住所の一部であるべきかどうかはわかりません。

ご協力いただきありがとうございます。

4

1 に答える 1

0
var socket = io.connect('what to put here?');

JavaScriptなので<script>、おそらくどこかのタグに入れる必要がありますhead.

チュートリアルで、A SocketIO クライアントまでスクロールします。このセクションでは、websocket のクライアント側である JavaScript について説明します。

GitHub でサンプルのコードを見て、そのセクションを確認することもできます。最後に、ドキュメントの 2 番目のコード セクションにも HTML があります。

于 2015-06-13T05:17:11.723 に答える