首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >登录到Channel Advisor

登录到Channel Advisor
EN

Stack Overflow用户
提问于 2012-06-04 14:59:27
回答 3查看 372关注 0票数 0

我试图登录到channel advisor,但它输出了一个错误:HTTP/1.1 302 Moved Temporarily

但是上周它运行得很好,我登录并检索了我的数据,现在我又运行了一次,它有一个错误。

下面是我的代码:

代码语言:javascript
复制
 $pages = array('home' => 
 'https://login.channeladvisor.com/?gotourl=https%3a%2f%2fcomplete.channeladvisor.com%2f', 
           'login' => 
 'https://login.channeladvisor.com/?gotourl=https%3a%2f%2fcomplete.channeladvisor.com%2f', 
           'data' => 
  'https://merchant.channeladvisor.com/AM/MyInventory/View_Inventory.aspx?apid=32001263'); 

  $ch = curl_init(); 
  //Set options for curl session 
  $options = array(CURLOPT_USERAGENT => 'Mozilla/12.0 (compatible; MSIE 6.0; Windows NT 5.1)', 
         CURLOPT_SSL_VERIFYPEER => FALSE, 
         CURLOPT_SSL_VERIFYHOST => 2, 
         CURLOPT_HEADER => TRUE, 
         CURLOPT_RETURNTRANSFER => TRUE, 
         CURLOPT_COOKIEFILE => 'cookies.txt', 
         CURLOPT_COOKIEJAR => 'cookies.txt'); 

//Hit home page for session cookie 
$options[CURLOPT_URL] = $pages['home']; 
curl_setopt_array($ch, $options); 
//curl_exec($ch); 

//Login 
$options[CURLOPT_URL] = $pages['login']; 
$options[CURLOPT_POST] = TRUE; 
$options[CURLOPT_POSTFIELDS] = 'username=xxxxx@gmail.com&password=xxxxxxx'; 
$options[CURLOPT_FOLLOWLOCATION] = false;
curl_setopt_array($ch, $options);
curl_exec($ch);

//Hit data page 
$options[CURLOPT_URL] = $pages['data'];
curl_setopt_array($ch, $options); 
$data = curl_exec($ch); 

//Output data
echo $data; 

//Close curl session 
curl_close($ch); 
EN

回答 3

Stack Overflow用户

发布于 2012-06-06 23:13:01

如果你正在寻找来自'https://merchant.channeladvisor.com/AM/MyInventory/View_Inventory.aspx‘的数据,为什么不使用API呢?

http://developer.channeladvisor.com/display/cadn/Inventory+Service

票数 0
EN

Stack Overflow用户

发布于 2012-06-06 23:20:20

如果您只想导出库存信息,那么ChannelAdvisor有自己的UI-可用的库存导出服务。至少,您可以自动化代码来启动并下载导出的csv或tab delim文件:http://ssc.channeladvisor.com/howto/exporting-inventory

票数 0
EN

Stack Overflow用户

发布于 2012-06-04 15:56:37

我认为您应该从Channel Advisor处理此类更新,因此,请遵循重定向。

由于我不认为这是使用curl登录Channel Advisor的常用方法,因此每次更新Channel Advisor时,您都需要更新代码。这让我想起了我们只能使用curl检索Google Analytics数据的时候:每次他们更新登录系统时,你都必须重写你自己的curl登录方法--无聊。

您可以阅读有关使用curl跟踪Header: Locationthis answer。基本上:

代码语言:javascript
复制
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$a = curl_exec($ch);
if(preg_match('#Location: (.*)#', $a, $r))
 $l = trim($r[1]);
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10877442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档