Jquery帖子回复不可用

时间:2016-11-08 09:20:26

标签: javascript jquery python post

我是javascript的新手,这个问题可能很简单,但我需要帮助。 我的目标是根据龙卷风向python服务器发送帖子。

在以下功能中:

var machin = $.post( '/room/testroom', function( data ) {
         truc = data;
         return truc;

我永远不会回复truc的内容。 这个变量里面有一个url,用于创建一个新的Websocket连接。

当我console.dir(machin);时,我在控制台中看到了想要的网址所需的responseText,但我无法在控制台之外获取它。

函数内部的变量数据本身有我想要的数据,就好像我这样做:     alert(data) 我看到一个包含想要网址的提示框。

请随时向我询问详情,因为我可能不完全清楚。

服务器端,我的python代码就是这个:

def post(self, RoomName):
    print 'je poste'
    db = connect(host=config.SQLSERVER, user=config.SQLUSER, passwd=config.SQLPASS, db=config.SQLDB)
    cursor = db.cursor()
    uri = self.request.uri
    url = uri.split('/')
    RoomName = url[2]
    sql = 'SELECT RoomID FROM abcd_un WHERE RoomName = %s', [RoomName]
    cursor.execute(*sql)
    RoomID = cursor.fetchone()
    print 'RoomID', type(RoomID)
    RoomID = str(RoomID[0])
    RoomID = RoomID.decode()
    fullurl = 'ws://' + self.request.host + '/socket/' + RoomID

    #print uri
    db.close()
    wsurl = {
        'url': fullurl,
    }
    wsurl_encoded = tornado.escape.json_encode(wsurl)
    self.write(wsurl_encoded)

2 个答案:

答案 0 :(得分:0)

尝试:

var machin = function (){
     $.post( '/room/testroom', function( data ) {
     truc = JSON.parse(data);
     return truc;
}

现在调用函数:

var response = machin(); 

答案 1 :(得分:0)

尝试:

txt_input.value