Harry-zklcdc / go-proxy-bingai

用 Vue3 和 Go 搭建的微软 New Bing 演示站点,拥有一致的 UI 体验,支持 ChatGPT 提示词,支持 API 调用,国内可用。
https://www.b1ng.chat
MIT License
4.21k stars 6.45k forks source link

[Bug] 🐛 无法使用api #467

Open Tomywang999 opened 2 months ago

Tomywang999 commented 2 months ago

Confirmations

Describe the bug

使用Cloudfalre Worker 部署后,网页版正常使用,api一直显示:User needs to solve CAPTCHA to continue.

Steps to reproduce

如上

Expected behavior

正常使用api

Screenshots

Screenshot 2024-08-28 at 9 41 15 AM Screenshot 2024-08-28 at 9 45 39 AM

Deploy

Cloudflare Worker

UserId

makox8%7C2%7Cfop%7C0%7C1699

OS & Version

macOS 14.6.1

Browser & Version

Chrome 127.0.6533.120

GoProxiBingAI Version

v2.4.4

Additional context

No response

zhanghanzhe666 commented 1 month ago

目前我用cf的pages部署后也是这样,根据“User needs to solve CAPTCHA to continue.”表示用户需要通过人机验证,建议更换人机验证服务器

SzeMeng76 commented 1 month ago

用自己部署的bypass server可以 也是可以cf部署

marcomozart commented 1 month ago

调用 API 通过 CF 也会触发 CAPTCHA。也许可以在调用 API 之前实现绕过服务器?

marcomozart commented 1 month ago

绕过服务器在调用 API 时未被使用。这是主要问题。

Harry-zklcdc commented 1 month ago

绕过服务器在调用 API 时未被使用。这是主要问题。

咱可以看了代码,在发言不?

实现代码:https://github.com/Harry-zklcdc/bing-lib/blob/491ac86e880c911b50b8e853279f7c48026760c6/chat.go#L696

CF 部署不易绕过,这是已知问题,因为 CF 的 IP 池已经都是高风险了

marcomozart commented 1 month ago

也许一个更简单的解决方案是使用 Cloudflare Worker 捕获 API 请求,并使用 fetch 将其发送到绕过服务器。将解决方案实现到完整代码中可能太难了

marcomozart commented 1 month ago

我觉得这是一个难题,所以不需要着急。

Harry-zklcdc commented 1 month ago

CF 的版本的的代码在这

https://github.com/Harry-zklcdc/go-proxy-bingai/blob/664031bdf3f003c99779e8b2d39aac67b428fe9c/cloudflare/src/bingapi.js#L139

Harry-zklcdc commented 1 month ago

可能和 #470 有关,在尝试一下

SokWith commented 1 month ago

似乎现在cct也挑网络出口了,我的两个cct服务器:

https://cct.nbing.eu.org

https://cctb.pages.dev

似乎由于经常引用,被cf缓存到中国区,造成获得的cct对API无效了。刚才切换了出口部署,就又可以了。

可以试试

image

reccea commented 1 week ago

似乎现在cct也挑网络出口了,我的两个cct服务器:

https://cct.nbing.eu.org

https://cctb.pages.dev

似乎由于经常引用,被cf缓存到中国区,造成获得的cct对API无效了。刚才切换了出口部署,就又可以了。

可以试试

image

cct这个要怎么用?能当api?

SokWith commented 1 week ago

cct这个要怎么用?能当api?

cct服务器就是bypass服务器,我简化了一下可以直接GET使用。