问题标签 [angular4-httpclient]

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.

0 投票
1 回答
774 浏览

amazon-web-services - AWS API Gateway Enable CORS 允许 OPTIONS 但阻止 POST

我有一个具有以下形式的 angular-5 组件:

它周围还有其他东西,但这是本质。

这由打字稿组件处理:

然后是实际发布的服务:

基本上,它将四个字段和一个主题值发布到 lambda,我在 AWS 中编写过。我已经从网关测试了 Lambda,我知道它可以工作(我收到了它发送的电子邮件。问题似乎是 Lambda 的 API 网关。一旦启用 CORS,我就会收到以下错误客户端控制台(Chrome 开发者工具)

POST https://ovo5xmxf7e.execute-api.ap-southeast-2.amazonaws.com/prod/ContactFormLambda 500 () /contact:1 无法加载 https://ovo5xmxf7e.execute-api.ap-southeast-2。 amazonaws.com/prod/ContactFormLambda:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问来源“ http://zenithwebfoundry.com ”。响应的 HTTP 状态代码为 500。 main.630e523b47c705dd5494.bundle.js:1 后端返回代码 0,正文为:[object ProgressEvent]

我发现 OPTIONS 工作正常:

要求

响应标头

请注意它是如何返回“access-control-allow-origin:*”标头响应的,所以我认为这之后的 POST 是可以的,但是 POST 失败并出现上述错误

我从这个设置开始,只是为了允许任何来源:

启用 CORS

并收到一条成功消息:

在此处输入图像描述

当我用我的域来源“ http://zenithwebfoundry.com ”更改“*”时,同样的事情发生了

那么如何使用CORS 设置网关,以免 POST 被阻塞?我究竟做错了什么?

0 投票
2 回答
640 浏览

angular - 在 Angular 4 中向 Web Api 服务发布请求不起作用

Web API 上的代码:

尝试从 Angular 端发送对象 CMM_DartBDO。我正在使用 HttpClient 模块。

当它运行时,服务会受到打击并在其结束时返回正确的响应,但角度代码会收到错误 406(未授权。)请帮助。

0 投票
1 回答
805 浏览

angular - 如何从项目中保存 id 以在下一页上显示特定数据(角度 4)

我有一个从网络服务获得的学校列表和一个仪表板页面,我想要的是当用户单击特定学校时打开仪表板页面,但它会获取有关所选学校的数据,所以它的类型保存学校的 id 并在下一页(仪表板)中调用它以获取其中学校的数据,

我想知道如何在 Angular 4 中做到这一点

这是您需要的所有代码

学校列表组件的html:

学校名单 ts:

仪表板 html 组件

仪表板 ts:

例如,我点击了 x 学校,所以它导航到仪表板,同时会根据它的 id 获取这所学校的数据

这是一所学校的 api

http://crm.easyschools.org/api/en/getschools/singleSchool

如果你在 postman 上打开它,你会看到需要 id 才能从单个学校获取数据,你可以写 1 来测试

如果有不清楚的地方或者你想要一个特定的代码,请告诉我,我会用你想要的任何细节更新你

0 投票
2 回答
1872 浏览

angular - 如何将选择标签选项值附加到 Web 服务 Angular 4

我有一个网络服务来发布一些数据来创建配置文件,

所以我有一个表单的下拉列表

当我尝试从表单上的所有内容中发布数据时,它工作正常

但下拉菜单中所选选项的选项值不会发布

它给了我“未定义”的错误

我问了后端团队,他们告诉我,我没有在 JSON 数组中绑定正确的数据

我需要知道发布期权价值的正确方法是什么

如果我在下拉列表中选择了多个选项,例如多选下拉列表,如何在数组中发布所有选项?

这是我的组件 html:

我的组件 ts:

当我在邮递员上尝试 Web 服务 API 并给它一个数字 (1) 时,它给了我 scode 200,问题在于 HTML 中的输入以正确读取值

如果缺少任何内容或您需要更多详细信息,请发表评论,我将为您提供所需的所有数据,我需要知道 District_id 部分有什么问题

随意尝试邮递员上的 API

0 投票
1 回答
1080 浏览

node.js - Angular 5 HttpClient 响应标头不包含自定义标头

我在 Nodejs 中制作了 API,登录后我x-auth在成功登录的响应中发送 auth-token(标头)。

当我从邮递员那里点击网络服务时,我可以看到x-auth标题但在 Angular 4中看不到

我正在使用 HttpClient ,而不是 Http。

然后在我的组件中

data.headers.getAll('x-auth')返回 Null 。

0 投票
0 回答
633 浏览

angular - HttpXsrfTokenExtractor-getToken() 返回 null

升级angular cli后,HttpXsrfTokenExtractor的getToken()返回null,请帮忙

0 投票
0 回答
618 浏览

angular - 如何在重试请求Angular 4之前为发布请求设置更长的超时时间

我正在向我的服务器发送一个发布请求,该服务器又向另一个第 3 方 API 发送一个请求 .. 这个 API 需要花费大量时间来发送响应......如果重复请求,第 3 方 API 会发送一个错误制作。同时..等待一段时间后,角度重试请求,即使我提出的第一个请求在一段时间后成功,也会弹出重复的错误消息。

我想在重试请求之前等待足够长的时间,并且仅在第一个请求出现错误时重试。

我尝试将超时设置为 1 小时并将重试设置为 0,但没有任何效果。

这是我的代码:

0 投票
1 回答
1697 浏览

angular - angular 4 httpGet withCredentials 和标头冲突

为了将 cookie 发送到服务器,我必须在选项参数中使用 { withCredentials: true },但是当我使用

我收到以下错误:

奇怪的事情:当我通过浏览器调用这个 url 时没有任何错误

你可以帮帮我吗?

0 投票
1 回答
626 浏览

ionic3 - HttpClient 标头无法附加授权

我正在尝试通过将令牌附加到 Http 标头来对 Django Rest API 进行身份验证。我已经将服务器配置为允许跨域资源共享,并且之前能够使用旧版本的 HTTP 进行身份验证。在我升级到最新的 Ionic CLI (Ionic 3) 并开始使用 HttpClient 模块后,问题就开始了。

这是我的一段代码:

API 返回以下错误:{"detail":"Authentication credentials were not provided."}

以下是发送的网络请求和服务器响应的详细信息:

在此处输入图像描述

但是,当使用 PostMan 使用附加到 HttpClient 标头的相同凭据时,身份验证成功。

在此处输入图像描述

似乎标头未随请求一起发送,或者授权未附加到标头。知道如何解决问题吗?

注意:我也在使用 CORS Google Chrome 扩展。

0 投票
1 回答
1145 浏览

javascript - 如何在角度 4 中进行同步 http 调用

我有一个 Angular 4 登录应用程序。我想要登录同步操作但异步?你能帮助我吗?

数据服务.ts:

user.service.ts :