如何在phantomjs或casperjs中传递session_id或cookie

时间:2018-04-11 14:32:15

标签: phantomjs session-cookies casperjs

您好我正在尝试使用phantomjs和casperjs执行以下操作。 创建一个自动脚本,然后执行以下步骤。

  • 转到网址。

  • 使用用户名/密码登录网址。

  • 登录后重定向到页面中的选项卡,打开另一个门户。

所以我的问题是当我尝试打开另一个门户网站时,它没有传递我的凭据(cookie或会话ID),因此它在页面中重定向但无法使当前会话保持活动状态。

我的问题是如何将session_id传递给重定向网址。

我的代码如下:

登录到页面后,它正在尝试验证页面已加载,并在调试模式下打印cookie:

以下步骤可以打印cookie

在此处输入代码:

casper.then(function(){
                //this.echo('-------------$$$ trying to print cookies ' + casper_cookies, 'WARNING' );  

                this.waitForSelector('#navigation', function then(){

        this.echo('------$$$Portal found navigationbar','INFO'  );

                                this.echo('-------------$$$ trying to print cookies using phantomjs: ', 'WARNING' );
//               this.echo('Browser Cookie: ' + this.evaluate(function() {
//            return document.cookie;
//}));
                var cookies = page.cookies;
                console.log('Listing cookies:');
                for(var i in cookies) {
                console.log(cookies[i].name + '=' + cookies[i].value);
                };
......
......code

,

在我的下一步中,我正在尝试重定向到另一个页面:

casper.thenOpen(NewUrl, function() {
     this.echo("-------$$$Trying to open newUrl", 'INFO');

        this.waitForSelector('#page', function then(){    
        this.echo('---------$$$ We have logged in ' + this.getTitle() + ' Page', 'INFO');   

       },

       function timeout() {
           this.echo("--------------$$$could not  found   ----------------- ");
       casper.exit(return_codes.protocol_error);
   });
 });
------------

因此,它可以重定向到页面,但无法通过session_id

如何添加session_id。请帮我解决这个问题。

0 个答案:

没有答案