- 当前 Bug 的表现(可附上截图)
昨天的时候,云函数访问外网,他的IP还是固定的。
但是今天,云函数IP一直变化,基本每次调用都是不同的IP。这样就导致访问公众号数据时,出现IP不在公众号白名单中。无法获取公众号数据。
- 预期表现
如何解决?可否把IP固定下来?或者如何取消公众号ip白名单?或者如何在代码里面搞一个代理IP?
- 复现路径
- 提供一个最简复现 Demo
if (usage == “getProxy”){
//get wx token
if (nowTime < expiryTime + wxTimeStamp) {
console.log(‘wx token is OK’)
}
else {
console.log(‘updating wx token’)
var value = {
method: ‘GET’,
uri: ’ https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=’ + wxAppId + ‘&secret=’ + wxSecret,
json: true
}
if (proxyOn) value.proxy = ‘http://’ + proxyIP;
const newTokenData2 = await rp(value)
if (newTokenData2.access_token == null)
{
return {
validToken:false,
proxyIP: proxyIP,
proxyOn: proxyOn,
}
}
console.log('newToken2 is: ’ + newTokenData2.access_token)
await db.collection(‘token’)
.where({ secret: tokenData.data[0].secret })
.update({
data:
{
wxTimeStamp: parseInt(new Date().getTime() / 1000),
wxAccessToken: newTokenData2.access_token,
},
})
console.log(‘get wx new token finished’)
}
return {
validToken: true,
proxyIP: proxyIP,
proxyOn: proxyOn,
}
}