Angular JS $http.get returns 来自 WP REST API 的空数据,但仅在实际 iOS 设备上
Angular JS $http.get returns empty data from WP REST API, but only on actual iOS device
我正在制作一个使用 WP REST API V2 插件访问 Wordpress 网站的 Ionic 应用程序。在我的控制器中给出此代码:
$http.get('http://www.greenfundsuriname.org/wp-json/wp/v2/posts/3701').then(function(response) {
$log.log(response);
});
$http.get('http://www.greenfundsuriname.org/wp-json/wp/v2/posts/').then(function(response) {
$log.log(response);
});
我在本地机器和 iOS 模拟器中得到了两个完美的响应,参见:
在我的实际设备上,单个 post 工作正常,但 posts URL 给我一个空数组作为数据响应:
这怎么可能?
结果是请求中的 header 之一导致了此问题。由于我的 OS 语言设置为荷兰语,因此 Accept-Language header 要求在 Wordpress 中发布荷兰语帖子。 Wordpress 正确返回了一个空数组。其他人——他们的 OS 设置为英语——获得所有英文 Wordpress 帖子。是这样解决的:
$http.get( url, {
headers: {'Accept-Language': 'en-US,en;q=0.8,nl;q=0.6'}
});
我正在制作一个使用 WP REST API V2 插件访问 Wordpress 网站的 Ionic 应用程序。在我的控制器中给出此代码:
$http.get('http://www.greenfundsuriname.org/wp-json/wp/v2/posts/3701').then(function(response) {
$log.log(response);
});
$http.get('http://www.greenfundsuriname.org/wp-json/wp/v2/posts/').then(function(response) {
$log.log(response);
});
我在本地机器和 iOS 模拟器中得到了两个完美的响应,参见:
在我的实际设备上,单个 post 工作正常,但 posts URL 给我一个空数组作为数据响应:
这怎么可能?
结果是请求中的 header 之一导致了此问题。由于我的 OS 语言设置为荷兰语,因此 Accept-Language header 要求在 Wordpress 中发布荷兰语帖子。 Wordpress 正确返回了一个空数组。其他人——他们的 OS 设置为英语——获得所有英文 Wordpress 帖子。是这样解决的:
$http.get( url, {
headers: {'Accept-Language': 'en-US,en;q=0.8,nl;q=0.6'}
});