Opencart 2.2.0.0:您无权访问 API
Opencart 2.2.0.0: You don't have permission to access API
我正在使用 Apache:2.4.7; PHP:5.4.24;打开购物车:2.2.0.0;
我创建了名称为 => REST 的 API 并生成了一个 API 密钥。
IMAGE API page of admin opencart
我是这样登录的API:
$url = "http://localhost/upload/index.php?route=api/login";
$params = array('key=dpUFrufwZdbctqKaFckZz7WudebaAQO7orP6Y3QtpxTsbOyjNjpQZgIgAtp4SQVJWSfvpj2Acpis0E382EO3PhRcSMSJ6MpjV8EDXlWAtEC7aD3aGUou2yCL7ETpDARiIpzgy7auG2hhllIRjeUtXsiVUu6ENlJ7fBtIKvomjpTeaMXpIVklWx5CyxwIIGUA5CoYLGD4qPFvr6OAqDxJvhktMOjhj4DlKTvkTp0WzuoRBfRCDt8N4XIHMxbTIH1u'
);
$parameters = implode('&', $params);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $parameters);
//execute post
set_time_limit(120);
$result = curl_exec($ch);
//close connection
curl_close($ch);
print_r($result);
它为我提供了一个令牌,因此我可以使用此令牌访问此 REST 中的其他人 link。但是,当我像这样使用令牌时:
$url = "http://localhost/upload/index.php?route=api/cart/products";
$params = array('token=bxXXgBX3NAue7dDnTC7pzQxf2qLZX8fB',
);
$parameters = implode('&', $params);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $parameters);
//execute post
set_time_limit(120);
$result = curl_exec($ch);
//close connection
curl_close($ch);
print_r($result);
它 returns 我的错误如下:
{"error": {"warning":"warning: you don't have permission to access API!"}}
有人能帮帮我吗?
我已经尝试过的:
- Permission for all user (user group)
- Pay atention to domain and sub domain
- Recreate the API and regenerate the API Key
您是否尝试过将您的 IP 地址添加到 Opencart 管理中允许的 IP 地址部分?
我正在使用 Apache:2.4.7; PHP:5.4.24;打开购物车:2.2.0.0; 我创建了名称为 => REST 的 API 并生成了一个 API 密钥。
IMAGE API page of admin opencart
我是这样登录的API:
$url = "http://localhost/upload/index.php?route=api/login";
$params = array('key=dpUFrufwZdbctqKaFckZz7WudebaAQO7orP6Y3QtpxTsbOyjNjpQZgIgAtp4SQVJWSfvpj2Acpis0E382EO3PhRcSMSJ6MpjV8EDXlWAtEC7aD3aGUou2yCL7ETpDARiIpzgy7auG2hhllIRjeUtXsiVUu6ENlJ7fBtIKvomjpTeaMXpIVklWx5CyxwIIGUA5CoYLGD4qPFvr6OAqDxJvhktMOjhj4DlKTvkTp0WzuoRBfRCDt8N4XIHMxbTIH1u'
);
$parameters = implode('&', $params);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $parameters);
//execute post
set_time_limit(120);
$result = curl_exec($ch);
//close connection
curl_close($ch);
print_r($result);
它为我提供了一个令牌,因此我可以使用此令牌访问此 REST 中的其他人 link。但是,当我像这样使用令牌时:
$url = "http://localhost/upload/index.php?route=api/cart/products";
$params = array('token=bxXXgBX3NAue7dDnTC7pzQxf2qLZX8fB',
);
$parameters = implode('&', $params);
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POST, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS, $parameters);
//execute post
set_time_limit(120);
$result = curl_exec($ch);
//close connection
curl_close($ch);
print_r($result);
它 returns 我的错误如下:
{"error": {"warning":"warning: you don't have permission to access API!"}}
有人能帮帮我吗?
我已经尝试过的:
- Permission for all user (user group)
- Pay atention to domain and sub domain
- Recreate the API and regenerate the API Key
您是否尝试过将您的 IP 地址添加到 Opencart 管理中允许的 IP 地址部分?