zoukankan      html  css  js  c++  java
  • obtain auth token

    curl -d "username=999999@zjtlcb.com&password=1234567" http://192.168.137.2:8000/api2/auth-token/
    
    [root@node01 ~]# curl -d "username=99999@zjtlcb.com&password=1234567" http://192.168.137.1:8000/api2/auth-token/
    {"token": "0ac9e8585ef6ae51eb62c785d10a6c5102de3ff7"}[root@node01 ~]# 
    
    
    -d/-data<data>:
    
    (HTTP) 发送指定的数据通过POST请求到HTTP server,
    
    
    同样的方式一个浏览器当一个用户填写了HTML 表单和按下submit 按钮。
    
    这个会到安置curl 来传递数据到server 使用content-type application/x-www-form-urlencoded.  
    
    -d/--data 是和 --data-ascii 相同。post data 纯2进制的, 你应该使用 --data-binary option.
    
    URL-encode form 字段的值 你需要使用 --data-urlencode.
    
    
    如果任何那些选项 是使用多次在相同的命令行, 数据片段会合并在一起使用一个指定的&符号
    
    import httplib, urllib
    params = urllib.urlencode({'username': '999999@zjtlcb.com', 'password': '1234567'})
    headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
    conn = httplib.HTTPConnection('192.168.137.1',8000)
    conn.request("POST","/api2/auth-token/", params, headers)
    response = conn.getresponse()
    print response.status, response.reason
    data = response.read()
    print data
    conn.close()
    
    没有使用cookie 导致报错:
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/mycompany/a8.py
    406 NOT ACCEPTABLE
    {"detail": "Could not satisfy the request's Accept header"}
    
    
    
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    import urllib2
    import urllib
    import cookielib
    
    def login():
    
         data={'username': '99999@zjtlcb.com', 'password': '1234567'}
         post_data=urllib.urlencode(data)   #将post消息化成可以让服务器编码的方式
         cj=cookielib.CookieJar()   #获取cookiejar实例
         opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
         #自己设置User-Agent(可用于伪造获取,防止某些网站防ip注入)
         headers = {}
         website = "http://192.168.137.1:8000/api2/auth-token/"
         req=urllib2.Request(website,post_data,headers)
         content=opener.open(req)
         print content.read()    #linux下没有gbk编码,只有utf-8编码
    
    if __name__ == '__main__':
        login()
    
    C:Python27python.exe C:/Users/TLCB/PycharmProjects/untitled/a7.py
    {"token": "0ac9e8585ef6ae51eb62c785d10a6c5102de3ff7"}
    
    Process finished with exit code 0
    

  • 相关阅读:
    python的lambda使用
    python的timedelta
    ptyhon读文件一行长度len为1022,出现\x00
    eclipse生成jar包
    linux 文件的软链接与硬链接(看着写的不错就转发了)
    各种VBA excel 命令、属性、方法
    键盘鼠标共享 Synergy
    关于 range 区域 excel
    php mssql几条常见的数据库分页 SQL 语句
    Get the Degree of Angle Between Hour and Minute Hand of a Clock at Anytime
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349589.html
Copyright © 2011-2022 走看看