问题标签 [winhttprequest]

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 投票
2 回答
8279 浏览

autohotkey - WinHttpRequest 超时

我正在使用 AHK 脚本发送一些 POST 请求。我正在尝试获得超时响应,以便向用户弹出一些消息。我不知道如何使用“SetTimeouts”方法和“WaitForResponse”见下面的代码

0 投票
1 回答
3764 浏览

vbscript - 服务器返回错误 - 完成此操作所需的数据尚不可用于 VB 脚本

为什么下面的代码不能成功连接到需要 SHA2 证书的服务器?我们的一位合作伙伴进行了 SHA2 升级,他们要求我们拥有 SHA2 证书。当我们连接到他们不需要 SHA2 证书(仅 SHA1)的站点时,它会使用下面的代码成功连接。当我们尝试连接到需要 SHA2 证书(secure.anywhere.org) 的站点时,我们收到错误:服务器返回错误 - 完成此操作所需的数据尚不可用 。已安装所有正确的 SHA2 证书。我们为 SHA2 安装了根证书和中间证书。这可能是 WinHTTP 的问题吗?或者这可能与我们需要修复的环境配置有关?

完整错误:

服务器返回错误:-2147483638 完成此操作所需的数据尚不可用。

用于连接的代码:

0 投票
1 回答
3426 浏览

vba - WinHTTP Request GET 未在 Excel VBA 中检索响应

我有一个触发对门户的 GET 调用的宏。下面是网址结构:

https://{P_URL_PORT}/ibm/console/status?text=true&type=cluster&name={P_CELL}&time={tStamp}

这是我的宏。

但我没有得到预期的回应。它正在显示登录屏幕响应。我尝试添加 POST 方法,它将发送登录 URL、用户名和密码。但是 GET 调用仍然没有检索到实际响应。

0 投票
0 回答
339 浏览

vba - 登录和注销状态下响应不同时获取网页源

使用我的代码(如下所示),我捕获了我网站网页的源代码,然后我尝试使用 InStr 查找字符串并使用 Split 处理它。一切正常,但我有一个需要帮助的问题。

当我登录到提供用户名和密码的网站时,我可以在网页源中看到该字符串,但是当我处于注销状态时,我的字符串在网页源中不可见。我需要在代码中进行哪些更改才能告诉计算机我已登录。

这是缓存/cookies 问题吗?如果是,如何对其进行编码,以便它尊重浏览器缓存/cookie,记住用户已登录并获取源,因为它显示为登录状态?

感谢回复。谢谢

0 投票
1 回答
3564 浏览

vba - http响应文本获取不完整的html

我在 excel vba 中有一个获取网页源 html 的代码(如下所示)。代码工作正常,但它获取的 html 不完整。执行该行时webpageSource = oHttp.ResponseText,变量webpageSource包含“DOCTYPE html PUBLIC ....... etc etc直到结束/html”,这就是它应该的样子。到这里为止一切都是正确的。但是下一行debug.print webpageSource只打印了“(adsbygoogle = window.adsbygoogle || []).push({}); ...... etc 等到​​最后 /html” 中的一半 html” 为什么会这样?我想从返回的响应文本中找到一些字符串,但由于它不完整,我无法这样做。有人可以解释一下吗?

谢谢

编辑:我也试过 .WaitForResponse 没有帮助:(

0 投票
0 回答
79 浏览

html - 在返回 JSON 的 GET 之后获取站点的 HTML

介绍

主要问题是下降,但我想在这种情况下有一些背景会有所帮助

好的,所以我想首先说这实际上是我在 stackoverflow 上的第一个问题——我已经使用这个网站很多年了,我基本上从中学到了关于编码的所有知识,但这也意味着我有很大的差距据我所知——选择我使用的很多方法只是因为它们是我所知道的唯一方法——如果您对如何改进下面描述的过程有任何建议,请随时与我分享。如果我的请求有任何不清楚的地方,我也想提前道歉,我会在任何这种情况下尝试详细说明。

方法

我正在尝试抓取个人球员在欧洲冠军联赛比赛中的表现(我实际上正在构建一个 Fantasy Football 应用程序,我认为这个项目我将来也会有很多问题)。我的来源是欧足联统计网站,例如“ http://www.uefa.com/uefachampionsleague/season=2016/matches/live/index.html?day=2&session=1&match=2015684 ”。在那里,大约在中间,您可以选择“球员”统计数据,并看到一个“表格”(实际上它是一个带有列表的 div),其中(默认情况下)显示有关给定(单个)比赛的统计数据。当在 HTML 中完全加载时,有两个 div,一个用于匹配统计数据,一个用于整体,列表的某些元素是隐藏的(例如基于玩家的位置),但所有元素都在那里。我的部分

(大部分代码被折叠)

现在我在 VBA 中使用 WinHTTPRequest,希望用数据填充 Excel 范围,但最后我会将项目移动到 VB.NET 并使用 SQL。问题是我似乎无法获得列表中显示的日期。使用:

仅返回侧的主要结构,而不是“表”中的数据。因此,我使用 FireBug,然后使用 WireShark 来检查当玩家在选择中更改时正在传输的数据。一个数据包是关于球员、他的年龄、姓名等的一般统计数据——没用。第二个看起来像这样:

(“v”参数实际上是无用的,没有它的工作方式相同)实际上确实返回了一堆数据。显然它是 JSON 的形式,并且看起来像这样:

这就是无论何时更换球员时都会获得的那种响应,无论是选择单场比赛统计数据还是整体数据(当然不必实际在网站上,不需要cookie,只需“ http:/ /www.uefa.com/livecommon/match-centre/cup=1​​/season=2016/round=2000634/player=250021048/overall.json “你有统计数据)问题是,这些是总体统计数据。我可以理解有某种代码可以计算个人比赛的统计数据(我实际上可以自己做,只需在每次比赛后刷新数据以计算个人比赛的统计数据)。尽管如此,他们往往会不定期地更新统计数据,所以我真的更希望能够从个人比赛中检索统计数据。所以:

问题

鉴于上述情况,有没有办法在另一个 GET 之后使用 WinHTTPRequest获取网站的 html 以获取玩家统计信息?如果没有,最好的方法是什么?我确实尝试使用 InternetExplorer 对象,但根本无法产生任何结果(实际上我在工作中遇到了同样的问题,我需要访问我们公司的站点 - 我什至无法检查 readystate,在站点的工作中,但是我想这是另一个问题的主题)

提前谢谢,如果我写的东西不清楚,再次抱歉。

0 投票
4 回答
13174 浏览

paypal - WinHTTP.WinHTTPRequest.5.1 在 TLS 1.2 之后不适用于 PayPal 沙箱

PayPal 沙盒最近仅限于 TLS 1.2 连接。这使得我们的网站停止使用 PayPal 沙箱,尽管它仍然可以使用生产 PayPal。未来生产的 PayPal 也会有同样的限制。我们使用经典的 ASP 和 Microsoft WinHTTP.WinHTTPRequest.5.1 组件与 PayPal 进行通信。这是下面的代码。objHttp.StatusText 返回“错误请求”。我们使用的是 Windows Server 2008 R2。我尝试改用 MSXML2.ServerXMLHTTP.6.0,但它只适用于我的 Windows 8.1 开发机器,不适用于我们的 Windows Server 2008 R2。虽然 MSXML2.ServerXMLHTTP.6.0 是 WinHTTP.WinHTTPRequest.5.1 的超集,但不如 WinHTTP.WinHTTPRequest.5.1 可靠。过去,我们的代码每天使用 MSXML2.ServerXMLHTTP.6.0 失败几次,所以我更喜欢使用 WinHTTP。WinHTTPRequest.5.1。我对这行代码也没有信心: objHttp.Option(9) = &H0AA0 。我们正在使用的解决方法是调用 WebAPI 向 PayPal 发送消息;但是,这会导致额外的轻微延迟。

WebAPI 调用代码:

0 投票
0 回答
918 浏览

php - 网络主机返回 ERROR_WINHTTP_INVALID_SERVER_RESPONSE

我在虚拟主机上托管一个游戏网站。我想测试我的虚拟主机是否可以处理我的游戏会发出的请求数量。所以我创建了一个脚本,每分钟向我的网站发送 500 个请求。

它似乎完美地处理了所有事情,但过一段时间 de respondse 会返回 ERROR_WINHTTP_INVALID_SERVER_RESPONSE。我用谷歌搜索了它,它说服务器响应无法解析。

PHP代码:

游戏内脚本只是向这个文件发送一个 HTTP PostAsync,其中包含一个包含 playerID 的数组。

这是我的 php 代码或我的网站配置或我的游戏代码中的错误吗?另外,我该如何解决这个错误?

0 投票
0 回答
1683 浏览

vba - 使用带有 SSO 身份验证、无密码、多次重定向的 WinHTTP.WinHTTPrequest 下载二进制文件

使用 VB 和 WinHTTP.WinHTTPrequest.5.1,我需要为驻留在网络共享上的用户自动下载二进制文件,需要 SSO 身份验证,无需硬编码或要求用户输入密码。

我已经在网上审查了一段时间的解决方案,下面的 VB 是我得到的最接近的。我在下载多个重定向而不是文件时遇到问题。

响应标头

结果下载仍然是 WSSO 重定向页面而不是文件。

0 投票
1 回答
8093 浏览

vba - WinHttp.WinHttpRequest 添加到内容类型

我正在尝试使用 vba WinHttp.WinHttpRequest 向 kigo 的 api 发出请求,我能够发送请求,但是 WinHttpRequest 在发送请求时更改了添加 Charset=UTF-8 的内容类型,并且该 kigo 的 api 返回 415错误。

我这样设置内容类型

但是当我在 Wireshark 中查看请求时,内容类型是这样的

有任何想法吗?

我发现了这个,这与我的问题相似,但我不明白解决方案。