问题标签 [angular-http]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - JsonP 返回“未捕获的语法错误:意外的令牌:”AngularJS - routingnumbers.info
我已经对这个问题进行了荒谬的研究,并希望有人可以帮助诊断出问题所在。
我已经尝试过查看以下 SO 问题:(由于声誉原因,我不会让我发布超过 2 个链接,所以我只包含了路径)
- 问题/16344933/angularjs-jsonp-not-working/16352746#16352746
- 问题/19269153/jsonp-request-in-angularjs-doesnt-work-like-in-jquery
- 问题/19669044/angularjs-getting-syntax-error-in-returned-json-from-http-jsonp
在许多其他......
我尝试过的事情: 我已将&callback=JSON_CALLBACK添加到 url 的末尾。我已经更改了诸如responseType: 'JSON' 之类的配置设置。我还多次重新安排了 http.jsonp 请求,以确保它不是程序化/文本的(http({}) 和 http.jsonp)
这是我正在尝试做的事情:使用角度 jsonp 请求 从routingnumbers.info/api/获取信息(服务器不允许 CORS)。我可以使用 jQuery 成功发出请求,但我无法使用 angular 成功发出请求。
这是相应的测试小提琴:http: //jsfiddle.net/dqcpa/14/
如您所见,我收到两个错误:
- 资源解释为脚本,但使用 MIME 类型 text/plain 传输:“ https://routingnumbers.herokuapp.com/api/data.json?rn=071000013&callback=angular.callbacks._0 ”。角.min.js:97
- Uncaught SyntaxError: Unexpected token :
但是,如果您检查 chrome devtools - NETWORK 中的响应,它是正确的:虽然我知道 jsonp 将返回 jsonpfunction({ "MyJson": "Data"}) 内部的响应,这是它挂断的地方。
这是原始代码:
有没有人使用这个API与角度?我假设我可以做一些事情(没有 jquery)来修改标题,但我无法找到任何信息。我还认为这可能是服务器问题(尽管,如果它在 jquery 中正常工作,那将不是问题)。也许这可能与HTTPS有关
TL:DR - Angular JSONP 请求不工作,但使用相同的 URL,jQuery JSONP 请求工作。参考上面的代码,我错过了什么?
任何帮助都是极好的!
编辑:一些标点符号和东西。
angularjs - 在 AngularJs 的服务中使用 $http 预加载数据的最佳方法
我正在尝试创建一个服务,该服务首先通过使用 $http 进行 AJAX 调用来加载一些数据。
我正在看类似的东西:
我想确保在使用返回实体之前完全加载实体getEntityById
。
请让我知道这样做的正确方法是什么?我知道的一种方法是进行同步 AJAX 调用,但有更好的方法吗?在这种情况下可以以更好的方式使用 Promise 吗?
json - 未调用 Http 成功
我在 Angular 中尝试了一件非常简单的事情:通过 $http 调用一个 json 文件 ...
没有成功,总是调用错误函数。json 的路径是正确的(找到了 json)。Firebug 显示 HTTP 200。尝试使用不同的 WebServer(来自 XAMPP 的 Apache,来自 WebStorm 的 IIS Express)。
没有错误消息,但配置显示:
javascript - Angular 1.3.0 支持 JSON 响应,如何在 Angular 之前覆盖它或预解析响应?
在最新版本的 Angular (v1.3.0) 中,他们为 application/json 的内容类型标头添加了修复。现在我的所有回复都收到错误,因为它们不是有效的 JSON。我知道我应该更改后端以使用纯文本标题进行响应,但目前我无法控制。在 Angular 尝试解析响应之前,我有什么方法可以预先解析它?
我认为这是他们所做的修复: https ://github.com/angular/angular.js/commit/7b6c1d08aceba6704a40302f373400aed9ed0e0b
我遇到的问题是我从后端得到的响应有一个与 Angular 正在检查的不匹配的保护前缀。
我试图在配置中添加一个 http 拦截器,但这没有帮助,仍然在 Angular 本身之后解析。
我在控制台中遇到的错误(它来自 Angular 中 JSON 字符串的反序列化):
javascript - 正确使用变压器与拦截器
当发布到服务层中的端点以更新用户的配置文件时,我需要从请求有效负载(具有来自客户端的所需修改的配置文件)中删除某些值并将它们重新附加到响应有效负载(更新的配置文件来自服务器)。我目前正在使用 Angular 的请求和响应转换器执行行为,如下所示:
我将一个转换器添加到默认请求转换器,并将一个转换器附加到默认响应转换器。我的问题是,有没有更好的方法来做到这一点?也许使用拦截器,如此处所述,而不是?如果是这样,怎么做?
angularjs - Angular $http 不会打开所有响应标头
我想获取 RESTful API 的“X-Total-Count”响应标头。在尝试获取我的 ngResource 'User' 的查询回调函数中的标头时,似乎 $http 忽略了很多响应标头。
这些是我的请求的响应标头:
在这里,我正在查询一组用户:
这是控制台的结果:
那么为什么 $http 的 responseHeaders() 函数只转换 10 个标头属性中的 2 个呢?
javascript - 在 asp.net web api 中添加一个额外的 get 方法
我是asp.net web api 世界的新手。我对 get()、put()、post() 和 delete 有了基本的了解。
在我的应用程序中,我需要另外两个 get() 方法。下面给出解释——
angularjs 控制器中已经有一个$http.get(..)
。
我的问题是,如何get()
从角度控制器调用这两种附加方法。
json - Web api 返回空值
我有一个用于从服务器访问数据的 Web Api 控制器:
由 angularJS 控制器调用:
};
在浏览器网络中,我有:
请求负载 {}
响应标头:
在响应选项卡中:[{}]。
怎么了?
angularjs - AngularJs:$scope 处于 $apply 阶段,仍然 $http 请求没有立即发送?
我正在发送 Http 请求。但它不会立即触发。而且我已经检查过它的范围是否处于 $apply 阶段。所以任何人都知道为什么会发生这种情况?
我的服务喜欢:
`
我尝试调试它,然后它继续上$http.post("")
线,然后继续return deferred.promise
,但不触发任何请求。
先感谢您!!
angularjs - 使用 jsonp 的角度 - 意外令牌
当我使用 Jsonp调用“ http://api.trademe.co.nz/v1/Search/Property/Residential.xml ”时,我收到了一个意外的令牌错误。
我正在使用下面的代码来调用 api
知道为什么我会收到此错误吗?这是调用jsonp服务的正确方法吗?
请求标头: