我怎么能通过meteor的HTTP.call()节点的额外选项?
在Meteor中执行HTTP.get()调用时,出现SSL错误 , UNABLE_TO_VERIFY_LEAF_SIGNATURE 。
上面的链接指向涉及Node参数的解决scheme(例如{rejectUnauthorized: false}
),但是如何将其中的任何一个传递给Meteor还不清楚。 我试过HTTP.get(url, {rejectUnauthorized: false})
没有运气。
现在可以通过将npmRequestOptions传递给Meteor HTTP请求:
const requestOptions = { npmRequestOptions: { rejectUnauthorized: false } } const result = HTTP.get(url, requestOptions)
我最终创build了一个Meteor的HTTP包的分支,它只是通过它不知道的选项。 我认为这是一个理智的做法(而不是完全放弃这些选项),我希望meteor团队把这一变化推向核心。
Atmosphere包称为http-more 。
看看HTTP包的来源( https://github.com/meteor/meteor/blob/devel/packages/http/httpcall_server.js#L75 ),我注意到它没有直接使用节点的http类实现,而是使用request
包,并且可以传递它的选项(参见上面的链接)是有限的。 所以我不确定这是现在可能的。
看看request
包的请求选项( https://github.com/mikeal/request#requestoptions-callback )我不确定如何启用你关心的选项。
顺便说一句,如果你在服务器上,你可以直接使用http(s)直接使用Npm.require('https')
。