flask ajax

学习ajax请求,随便弄了一个本地页面,填了一个本地启动的一个flask后台,先出现了:

(No 'Access-Control-Allow-Origin' header is present on the requested resource.)应为是填的类似http://192.168.253.1:5000/test_ajax/"的地址出现了跨域访问的问题;

参考了https://blog.csdn.net/zhoucheng05_13/article/details/53580683,ajax中添加了dataType: 'jsonp'解决了跨域问题,使用jsonp后又有callback验证问题,开始以为直接翻字符串就可,没想打还有验证(Uncaught ReferenceError:),可以看看这个https://blog.csdn.net/zhoucheng05_13/article/details/78694766;

前端代码

<script type="text/javascript" src="./files/jquery-1.8.2.min.js"></script>
<script type="text/javascript">
function loadXMLDoc()
{
    $.ajax(
        {
            url:"http://192.168.253.1:5000/test_ajax/",          //本地后台提供的url
            dataType: 'jsonp',
            jsonp:"callback",               //callback可以设置成其他,后台验证时就需要对应改变
            success:function(result){
                console.log(result)
                alert(result)
            }
        }
    )
}
</script>


<div id="myDiv"><h2>使用 AJAX 修改该文本内容</h2></div>
<button type="button" onclick="loadXMLDoc()">修改内容</button>

 

后端代码

@app.route('/test_ajax/')
def test_ajax():
    callback = request.args.get('callback')
    return callback + '("hello")'

 

posted @ 2018-07-02 12:54  曙暮之光  阅读(254)  评论(0编辑  收藏  举报