【发布时间】:2015-02-19 20:42:57
【问题描述】:
我在 Angular JS 中发出 HTTP 请求。
这在浏览器中运行良好,并成功返回数据。但是,当我在设备上测试 Phonegap 使用情况时,它会返回 错误。
请求的数据从控制器传递到工厂,下面是我用来发出请求的代码示例。
HTML
<ul>
<li ng-repeat="story in stories" ng-click="setUser(story.name)">
<img ng-src="{{ story.img }}" width="120" height="108" />
<div>
<h2>{{ story.name }}'s Story</h2>
<p>{{ story.title }}</p>
</div>
</li>
</ul>
此 HTML 在 ng-click 上调用函数 setUser(story.name),该函数在 ng-repeat 中传入用户的当前名称。
控制器
$scope.setUser = function (story) {
$scope.chosenStory = story;
dataFactory.setUser($scope.chosenStory); // HTTP call
}
上面的控制器从 HTML 的 ng-click="setUser(story.name)" 获取值并将其发送到 factory 以发出 HTTP 请求。
工厂
setUser : function (val) {
window.alert(val);
var username = val;
window.alert(val);
$http.get('./js/json/scenarios/' + username + '.json')
.success(function (data) {
window.localStorage.setItem("users", JSON.stringify(data));
$location.path('/story');
})
.error(function (data, status) {
window.alert(val);
window.alert(data);
window.alert(status);
});
},
在 Google 的控制台中,它会记录来自 HTTP 请求的成功内容。但是,当我在设备上测试 Phonegap 时,它总是返回 HTTP 请求的错误内容。例如。它总是从 HTTP 请求的错误函数中返回 window.alert。
我做错了什么/没做什么?提前致谢。
【问题讨论】:
-
您找到解决方案了吗?我在这里遇到同样的问题stackoverflow.com/questions/36985470/angularjs-ionic-return-404
标签: javascript angularjs cordova http