我在使用import.io API时遇到问题。
尽管我的应用程序在英国使用和部署,但由于Import.IO的服务器部署在美国,它将返回(对于某些商店)不正确的货币和价格数据。我与那里的支持团队进行了交谈,他们帮助我告知我可以在Import API中托管代理服务器。
我设法让AWS实例运行并安装了Squid作为代理服务器。我更改了我的Firefox连接设置并成功设法通过此代理服务器浏览网页(还验证了我的IP是我服务器的IP)
但是,我并不完全确定我应该在我的应用程序中调用导入库。
应用程序是用PHP构建的,我将如何生成要调用的URL的当前示例是:
public function generateCall( $import_key, $url )
{
return sprintf(
'https://api.import.io/store/data/%s/_query?input/webpage/url=%s&_user=XXXX&_apikey=%s',
$import_key, urlencode( $url ), self::$apikey
);
}
我直接调用api.import.io服务器。
答案 0 :(得分:4)
您可以使用CURL并获取API。 然后,您可以从特定国家/地区找到代理,以按国家/地区获取API数据。
$user = 'User';
$key = 'key';
$url = 'https://api.import.io/store/data/%s/_query?input/webpage/url=%s&_user=XXXX&_apikey=%s';
$proxy = '127.0.0.1:8888';
//$proxyauth = 'user:password';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
//curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyauth);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
$curl_scraped_page = curl_exec($ch);
curl_close($ch);
echo $curl_scraped_page;
答案 1 :(得分:1)
如果我理解你的问题,你试图通过你的squid代理访问import.io资源。 有几种选择