如何使用c++读取PAC文件

how to read PAC file using C++

本文关键字:PAC 文件 读取 c++ 何使用      更新时间:2023-10-16

我使用libcurl来处理HTTP请求。

我的应用程序应该能够理解代理设置,如果用户有任何

是可以的代理通过代理服务器或通过自动代理配置代理

我发现libcurl不支持PAC

因为我的应用程序是在c++中,有任何扩展/解析器引擎可用?

感谢您的阅读

PAC(代理自动配置)文件是简单的Javascript,具有功能FindProxyForURL返回代理配置字符串。

从技术上讲,这个函数可以使用Javascript可以做的任何事情,所以你必须捆绑一些Javascript引擎来解释它。

tiny-js (用c++编写的简单单文件javascript解释器)是适合此任务的库。

UPDATE: pacparser 库几乎是现成的引擎,专门用于解析pac文件。它的缺点是它捆绑了整个SpiderMonkey Javascript引擎,这使得它成为一个相当沉重的解决方案-它将添加1MB以上的项目二进制文件,只是为了解析pac文件。

如果你可以破解pacparser使用tiny-js而不是SpiderMonkey,那将是一个非常好的解决方案。