Lotusscript NotesHTTP请求问题

Lotusscript NotesHTTPRequest Issue

我正在尝试使用 LotusScript(Notes 客户端版本 10.0.1)中的新 Rest 功能从 Google 检索地址信息。不幸的是,我在尝试获得响应时遇到错误。如果我在浏览器中尝试相同的 url,我不会收到任何错误。没有配置代理。

这是一些示例代码

Dim Session As New NotesSession        
Dim ret As String
Dim URL As String
Dim headers As Variant
Dim webRequest As NotesHTTPRequest
Set webRequest = session.createhttprequest()

url = "https://maps.googleapis.com/maps/api/geocode/json?address=Antwerp&<my Google API key>"

ret  = webrequest.Get(URL)

当我在代理中 运行 这段代码时,我在最后一行收到以下错误:

Type mismatch in method CoerceString: Unknown found, Unknown expected

该命令的 documentation 状态:

Return value
Variant

Returns Variant content which contains JSON string.

您收到的错误消息是获取变体并尝试将其转换为字符串的典型错误消息。

奇怪的是:对于某些网站,它可以与

一起工作(可能取决于网站 returns 的数据类型)
Dim ret as String

尽管文档错误地指出该变体包含一个 JSON 字符串(实际上它只包含任何被调用的网站 returns,它可能是一个 JSON 字符串,但也可以简单地作为网站的源代码),它仍然是正确的,人们应该期待一个变体作为 return 值。

所以这一行应该有效:

Dim ret as Variant

我来晚了一点,但我想我要补充一点,简单的解决方案是设置:

webRequest.Preferstrings = True

然后你将从调用中得到一个字符串 ;-)