Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Flask webservice的HighCharts查询参数问题_Javascript_Python_Character Encoding_Highcharts_Flask - Fatal编程技术网

Javascript Flask webservice的HighCharts查询参数问题

Javascript Flask webservice的HighCharts查询参数问题,javascript,python,character-encoding,highcharts,flask,Javascript,Python,Character Encoding,Highcharts,Flask,我有一个HighCharts客户端,负责从Web服务加载数据并显示图表。请求数据的函数如下所示: function requestData() { $.ajax({ url: 'http://myhost.com/type?x=1&y=2&z=3', headers: { Accept : "application/json" }, type: "GET", dataT

我有一个HighCharts客户端,负责从Web服务加载数据并显示图表。请求数据的函数如下所示:

function requestData() {
    $.ajax({
        url:  'http://myhost.com/type?x=1&y=2&z=3',
        headers: { 
          Accept : "application/json"
        },
        type: "GET",
        dataType: "json",
        success: function(data) {
          //do something
        },
        cache: true
    });
}
(将来,将动态生成
url
属性)

目标Web服务是只读的,并使用Flask microframework实现:其目的是将JSON数据返回到HighCharts客户端。这是处理数据请求的烧瓶视图(函数):

@app.route('/<type>')
def get_data(type):

    x = request.args.get('x','')
    y = request.args.get('y','')
    z = request.args.get('z','')

    [...]
…我从服务器获取404状态代码(错误请求),这是非常好的,并且在请求的一个或多个查询参数为null或格式错误时都会出现:

HTTP/1.0 400 BAD REQUEST
Content-Type: text/html; charset=utf-8
Content-Length: 16
Server: Werkzeug/0.8.3 Python/2.7.3
Date: Wed, 14 Nov 2012 10:23:49 GMT
在Flask webservice上调试后,我注意到只有
x
查询参数(请注意,这是HTTP请求中给出的第一个)被正确解析,而
y
z
是empy字符串,这导致404错误

为什么会这样?与
&
->
&;有关的任何字符集不一致转义


谢谢,任何提示都会有真正的帮助(只需询问您是否需要更多规范或代码)

我认为错误正如您预期的那样,转义的符号是

试试这个:

function requestData() {
    $.ajax({
        url:  'http://myhost.com/type',
        headers: { 
          Accept : "application/json"
        },
        data: {
            x: 1,
            y: 2,
            z: 3
        },
        type: "GET",
        dataType: "json",
        success: function(data) {
          //do something
        },
        cache: true
    });
}
工作起来很有魅力:-)谢谢你,我很确定这一定是因为我对jQuery不太了解
function requestData() {
    $.ajax({
        url:  'http://myhost.com/type',
        headers: { 
          Accept : "application/json"
        },
        data: {
            x: 1,
            y: 2,
            z: 3
        },
        type: "GET",
        dataType: "json",
        success: function(data) {
          //do something
        },
        cache: true
    });
}