首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在jQuery中生成返回值的表比在服务器中调用api的时间多10倍。

在jQuery中生成返回值的表比在服务器中调用api的时间多10倍。
EN

Stack Overflow用户
提问于 2017-02-04 23:21:15
回答 1查看 35关注 0票数 0

我正在尝试从themoviedb.com接口返回结果。我测量到整个python函数需要0.3秒,但是javascript在3-5秒后就制作了表格,这怎么可能呢?

flask中的API调用函数

代码语言:javascript
运行
复制
def whispererSeries(partOfName):
    # ODESLANI REQUEST NA API PRO ODPOVIDAJICI SERIALY
    # API CALL
    url = URL('https://api.themoviedb.org/3/search/tv?api_key=' + config['API_KEY'] + '&language=en-US&query=' + str(
        partOfName) + '&page=1')
    http = HTTPClient(url.host)
    response = http.get(url.request_uri)
    body = json.loads(response.read().decode('utf-8'))

    if response.status_code == 200:

        # VRACEJICI SE HODNOTA
        # RETURN ARRAY OF DICTIONARIES
        valToReturn = []

        if (len(body['results']) > config['FIND_MAX_RESULTS']):

            for i in range(config['FIND_MAX_RESULTS']):
                valToReturn.append({
                    'Name': body['results'][i]['name'],
                    'Url': getUrlOfSerie(str(body['results'][i]['id']))
                })

        elif (len(body['results']) > 0):
            for i in range(len(body['results'])):
                valToReturn.append(body['results'][i]['name'])

        else:
            valToReturn = []
        return jsonify(valToReturn)

    else:
        print('Error: %r') % (response.status_code)

在这里,在jQuery中,我调用python函数并将返回值附加到表中。

代码语言:javascript
运行
复制
// ODELSANI POZADAVKU NA SERVER
// CALL SERVER FUNCTION
    $.ajax({
        type: "POST",
        contentType: 'application/json;charset=UTF-8',
        // ODESLANI HODNOTY INPUTU
        data: JSON.stringify($('.find-input').val()),

        // CILOVA ADRESA
        // ROUTE
        url: '/indexWhisperer',
        success: (response)=> {
            console.log(response)
            // VYCISTENI OD PREDCHOZICH VYSLEDKU
            // CLEAR FROM PREVIOUS RESULTS
            $('.founded-results tbody').empty()

            // NASTAVENI VIDITELNOSTI TABULKY A PRIDANI VYSLEDKU
            // MAKE TABLE VISIBLE AND APPEND RESULTS
            response.forEach((item, index, array)=>{
                $('.founded-results').css({'visibility': 'visible'})
                $('.founded-results tbody').append('<tr><td><a href="' + item.Url + '">' + item.Name + '<a/></td></tr>');
            })
        },
        error: (error)=>{
            throw error
        }
    })
EN

回答 1

Stack Overflow用户

发布于 2017-02-06 15:19:35

我刚做了一个MySQL数据库,从api中插入了数据,现在速度快多了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42042025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档