Day75

import requests
# requests.get(url='http://127.0.0.1:8000/api/asset/?K1=123')
# requests.get(url='http://127.0.0.1:8000/api/asset/',params={'k1':'v1'})
# # url表示往哪里发送数据,params表示传输的参数是什么
requests.post(url='http://127.0.0.1:8000/api/asset/')#触发了csrf的认证
URL--传送数据
import requests
# requests.get(url='http://127.0.0.1:8000/api/asset/?K1=123')
# requests.get(url='http://127.0.0.1:8000/api/asset/',params={'k1':'v1'})
# # url表示往哪里发送数据,params表示传输的参数是什么
requests.post(url='http://127.0.0.1:8000/api/asset/',
              params={'k1':'v1','k2':'v2'},#GET形式传输
              data={'username':'pandaboy','password':'5555'})#POST形式传输
#触发了csrf的认证,params触发的是get方式,data触发的是POST形式
URL--传输数据(POST)
host_data = {
    'status':True,
    'data':{
        'hostname':'c1.com',
        'disk':{'status':True,'data':'XXX'},
        'mem':{'status':True,'data':'XXX'},
        'nic': {'status': True, 'data': 'XXX'},
    }
}

requests.post(url='http://127.0.0.1:8000/api/asset/',
                json=host_data,
              # params={'k1':'v1','k2':'v2'},#GET形式传输
              # data={'username':'pandaboy','password':'5555'},
              # header = {'a':'123'},#请求头传递数据
              )#POST形式传输
#触发了csrf的认证,params触发的是get方式,data触发的是POST形式
URL--json
from django.shortcuts import render,HttpResponse
from django.views.decorators.csrf import csrf_exempt,csrf_protect
# Create your views here.
@csrf_exempt#这个装饰器就是取消CSRF的验证
def asset(request):
    # print(request.method)
    # print(request.POST)
    # print(request.GET)
    if request.method == 'POST':
        import json
        host_info = json.loads(str(request.body,encoding='UTF-8'))
        print(host_info)
    return HttpResponse('....')
# Post发送请求是放在请求体中的
Django--views

以下内容已经有bug了,request.META中是没有[HTTP_AUTHKEY]这个字典的

from django.shortcuts import render,HttpResponse
from django.views.decorators.csrf import csrf_exempt,csrf_protect
# Create your views here.
ck = 'asd7asd1345ad'
@csrf_exempt#这个装饰器就是取消CSRF的验证
def asset(request):
    # print(request.method)
    # print(request.POST)
    # print(request.GET)
    auth_key = request.META['HTTP_AUTHKEY']#没有HTTP_AUTHKEY这个字典
    print(auth_key)
    if auth_key!=ck:
        return HttpResponse('授权失败')
    if request.method == 'POST':
        import json
        host_info = json.loads(str(request.body,encoding='UTF-8'))
        print(host_info)
    return HttpResponse('....')
# Post发送请求是放在请求体中的
加密验证(初版)

 加密策略:

1.设置固定"盐"

2.设置时间戳

3.进行md5加密

4.同时发送"盐"+时间戳给服务端

转载于:https://www.cnblogs.com/pandaboy1123/p/9041867.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值