• perl PUT 请求加请求头


    use  LWP::UserAgent; 
    use LWP;
    use Encode;
    use LWP::Simple;
    use LWP::UserAgent;
    use HTTP::Cookies;
    use HTTP::Headers;
    use HTTP::Response;
    use Encode;
    use URI::Escape;
    use URI::URL;
    use JSON;
    use Data::Dumper;
      my $ua = LWP::UserAgent->new;
         $ua->agent("Mozilla/5.0 (Windows NT 6.1; rv:30.0) Gecko/20100101 Firefox/30.0");
      my $cookie_jar = HTTP::Cookies->new(
         file=>'lwp_cookies.txt',
         autosave=>1,
         ignore_discard=>1);
         $ua->cookie_jar($cookie_jar);
       my $token_url= 'http://127.0.0.1:8000/api2/auth-token/';
                    
      
       my $res = $ua->post($token_url,
                    {
                    'username'=>'015208@zjtlcb.com',
                    'password'=>'1234567'
                    });
       print $res->content();
       print "
    ";
       my $r= $res->content();
       my $r=encode_utf8($r);
       my $hash = decode_json($r);
       my $token =$hash->{"token"};
       print "$r is $r
    ";
       my $host = "http://127.0.0.1:8000/api2/auth/ping/";
       @header = (  
        'accept'=> "application/json; indent=4",  
        'content-type'=> "application/x-www-form-urlencoded",  
        'Authorization'=> "Token  $token" 
    	
        );  
        
        $host="http://127.0.0.1:8000/api2/accounts/";  
        $request = HTTP::Request->new(GET=>"$host");  
        $request->header(@header);  
      
        $response = $ua->request($request);   
        print $response->decoded_content;  
     
        my $r=$response->decoded_content;
    	my $r=encode_utf8($r);
        my $arr = decode_json($r);
    	print "---------------------------
    ";
    	foreach $a (@{$arr}){
    	  print $a->{"email"};
    	  print "
    ";
    	  };
    ##创建用户
        ##"password=1234567" 为put的数据
        my $url="http://127.0.0.1:8000/api2/accounts/00999@zjtlcb.com";
    	push @{$ua->requests_redirectable},'PUT';
        $request = HTTP::Request->new(PUT=>$url,HTTP::Headers->new('content-type'=> "application/x-www-form-urlencoded",
    	'accept'=> "application/json; indent=4", 
    	'Authorization'=> "Token  $token"),"password=1234567");  
        $request->header(@header);  
      
        $response = $ua->request($request);   
        print $response->content; 
        print $response->status_line();	
    	print $response->as_string();
    	
        # my $response = $ua->put($url,
        # 'accept'=> "application/json; indent=4",  
        # 'content-type'=> "application/x-www-form-urlencoded",  
        # 'Authorization'=> "Token  $token" ,
    	# "password"=>"1234567"
        
    							# );
         # print $response->status_line();
    	 # print $response->as_string();
     

  • 相关阅读:
    js显示当前时间
    js平滑循环滚动,广告图片文字…
    记录报错Cannot set property 'innerHTML' of null
    回到顶部的几种方法
    vue表单验证 Vee-Validate 的使用
    Vue @mouseover和@mouseout实现下拉二级导航
    线性代数学习笔记——第四章
    线性代数学习笔记——第三章
    线性代数学习笔记——第二章(下)
    线性代数学习笔记——第二章(上)
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349912.html
Copyright © 2020-2023  润新知