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'}
});