Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.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
Angularjs 未设置角度字体自动完成http端点回调_Angularjs_Autocomplete - Fatal编程技术网

Angularjs 未设置角度字体自动完成http端点回调

Angularjs 未设置角度字体自动完成http端点回调,angularjs,autocomplete,Angularjs,Autocomplete,我正在尝试复制这个自动完成在我的角度项目 我将HTML和控制器数据复制到我的项目中,它的行为就像Plunker一样。接下来,我想尝试将HTTP服务指向我的自定义端点,以便创建一个url,该url返回与Plunker示例中完全相同的数据结构和头,但自动完成不起作用 Plunker示例中的原始控制器代码: $scope.cities = function(cityName) { return $http.jsonp("http://gd.geobytes.com/AutoCompleteCit

我正在尝试复制这个自动完成在我的角度项目

我将HTML和控制器数据复制到我的项目中,它的行为就像Plunker一样。接下来,我想尝试将HTTP服务指向我的自定义端点,以便创建一个url,该url返回与Plunker示例中完全相同的数据结构和头,但自动完成不起作用

Plunker示例中的原始控制器代码:

$scope.cities = function(cityName) {
  return $http.jsonp("http://gd.geobytes.com/AutoCompleteCity?callback=JSON_CALLBACK &filter=US&q="+cityName).then(function(response){
    return limitToFilter(response.data, 15);
  });
};
Content-Length →671
Content-type →application/javascript
Date →Sat, 19 Oct 2013 02:43:22 GMT
Expires →0
Server →Microsoft-IIS/6.0
X-Powered-By →ASP.NET
我的版本:

$scope.cities = function(cityName) {
  return $http.jsonp("http://localhost/shfofx/PHP/Rest/symbols.php?keyword="+cityName).then(function(response){
    return limitToFilter(response.data, 15);
  });
};
从plunker示例返回的数据集(浏览器中的URL):

从我的端点返回的数据集(浏览器中的URL):

Plunker示例中的标题信息:

$scope.cities = function(cityName) {
  return $http.jsonp("http://gd.geobytes.com/AutoCompleteCity?callback=JSON_CALLBACK &filter=US&q="+cityName).then(function(response){
    return limitToFilter(response.data, 15);
  });
};
Content-Length →671
Content-type →application/javascript
Date →Sat, 19 Oct 2013 02:43:22 GMT
Expires →0
Server →Microsoft-IIS/6.0
X-Powered-By →ASP.NET
来自我的端点的标题信息:

Connection →Keep-Alive
Content-Length →58
Content-Type →application/javascript
Date →Sat, 19 Oct 2013 02:44:30 GMT
Keep-Alive →timeout=5, max=100
Server →Apache/2.2.23 (Unix) mod_ssl/2.2.23 OpenSSL/0.9.8x DAV/2 PHP/5.4.10
X-Powered-By →PHP/5.4.10
Plunker示例中的端点可以根据需要工作(请参见上面的Plunker)。当我将URL指向我的端点时,将根据Chromes资源检查器检索资源,但这些值不会显示为自动完成选项??我能做什么或尝试什么

经过进一步审查,Chromes resource inspector显示工作数据响应的前缀为:

angular.callbacks._2 (the 2 indicating that this is the 3rd call)
对于我的端点,“JSON_回调”没有被替换


我可以显式地将返回的字符串设置为包含“angular.callbacks.\u$”,其中$被替换为尝试的次数,并且可以正常工作,但这当然不是正确的方法。感谢您的帮助。

所以答案是两部分:

1-我需要在请求中传递callback=JSON\u回调:

http://localhost/shfofx/PHP/Rest/symbols.php?callback=JSON_CALLBACK&keyword="+cityName)
2-然后在我的端点中,我需要提取回调参数并将其前置到返回响应的开头:

$row .= $callback;
$row .= $formattedResponse;
......
print $row;

所以答案是两部分:

1-我需要在请求中传递callback=JSON\u回调:

http://localhost/shfofx/PHP/Rest/symbols.php?callback=JSON_CALLBACK&keyword="+cityName)
2-然后在我的端点中,我需要提取回调参数并将其前置到返回响应的开头:

$row .= $callback;
$row .= $formattedResponse;
......
print $row;