| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246 | 
							- #!/usr/bin/env python3  
 
- # -*- coding: utf-8 -*-  
 
- """
 
- @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
 
- @AUTHOR: ASJRD018
 
- @NAME: Ansjer
 
- @software: PyCharm
 
- @DATE: 2018/5/22 13:58
 
- @Version: python3.6
 
- @MODIFY DECORD:ansjer dev
 
- @file: Test.py
 
- @Contact: chanjunkai@163.com
 
- """
 
- from django.views.generic.base import View
 
- from django.utils.decorators import method_decorator
 
- from django.views.decorators.csrf import csrf_exempt
 
- from django.contrib import auth
 
- from django.http import HttpResponseRedirect
 
- '''
 
- http://192.168.136.40:8077/Test
 
- '''
 
- import json
 
- import requests
 
- from Service.ModelService import ModelService
 
- from django.middleware.csrf import get_token
 
- from django.http import JsonResponse
 
- from ratelimit.decorators import ratelimit
 
- from Object.ResponseObject import ResponseObject
 
- from Object.TokenObject import TokenObject
 
- from Object.RedisObject import RedisObject
 
- from django.shortcuts import render_to_response, render, redirect
 
- import paypalrestsdk
 
- from django.http import HttpResponseRedirect, HttpResponse
 
- # 测试接口sdk
 
- class Test(View):
 
-     '''
 
-     limit=10:指定返回记录的数量
 
-     offset=10:指定返回记录的开始位置。
 
-     page=2&per_page=100:指定第几页,以及每页的记录数。
 
-     sortby=name&order=asc:指定返回结果按照哪个属性排序,以及排序顺序。
 
-     animal_type_id=1:指定筛选条件
 
-     '''
 
-     @method_decorator(csrf_exempt)
 
-     def dispatch(self, *args, **kwargs):
 
-         return super(Test, self).dispatch(*args, **kwargs)
 
-     def get(self, request, *args, **kwargs):
 
-         # response = ResponseObject()
 
-         # return response.json(474)
 
-         return self.updatePrimaryMaster()
 
-     # 增加
 
-     def post(self, request, *args, **kwargs):
 
-         response = ResponseObject()
 
-         return response.json(0)
 
-     def updatePrimaryMaster(self):
 
-         from Model.models import Device_Info, Device_User
 
-         qs = Device_Info.objects.filter(isShare=True, primaryMaster='').values('primaryUserID', 'id')
 
-         for i in qs:
 
-             user_qs = Device_User.objects.filter(userID=i['primaryUserID'])
 
-             if user_qs:
 
-                 is_update = Device_Info.objects.filter(id=i['id']).update(primaryMaster=user_qs[0].username)
 
-                 print(is_update)
 
-         return HttpResponse(status=200, content='1234')
 
-     def ossCrd(self):
 
-         '''
 
-         生成sts上传授权
 
-         '''
 
-         from aliyunsdkcore import client
 
-         from aliyunsdksts.request.v20150401 import AssumeRoleRequest
 
-         import json
 
-         import oss2
 
-         # Endpoint以杭州为例,其它egion请按实际情况填写。
 
-         endpoint = 'oss-cn-shenzhen.aliyuncs.com'
 
-         # 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
 
-         # access_key_id = 'LTAIXSozepSx81xe'
 
-         # access_key_secret = '19BlxRiAHDPLx4mhz6vQZRuhK0eKed'
 
-         access_key_id = 'LTAIyMkGfEdogyL9'
 
-         access_key_secret = '71uIjpsqVOmF7DAITRyRuc259jHOjO'
 
-         bucket_name = 'cloudvod1'
 
-         # role_arn是角色的资源名称。
 
-         role_arn = 'acs:ram::1901342792446414:role/stsoss'
 
-         clt = client.AcsClient(access_key_id, access_key_secret, 'cn-shenzhen')
 
-         req = AssumeRoleRequest.AssumeRoleRequest()
 
-         # 设置返回值格式为JSON。
 
-         req.set_accept_format('json')
 
-         req.set_RoleArn(role_arn)
 
-         req.set_RoleSessionName('chanjunkai')
 
-         req.set_DurationSeconds(3600)
 
-         policys = {
 
-             "Version": "1",
 
-             "Statement": [
 
-                 {
 
-                     "Action": [
 
-                         "oss:PutObject",
 
-                         "oss:DeleteObject",
 
-                     ],
 
-                     "Resource": ["acs:oss:*:*:cloudvod1/*"],
 
-                     "Effect": "Allow",
 
-                     "Condition": {
 
-                         "IpAddress": {
 
-                             "acs:SourceIp": "120.237.157.184"
 
-                         }
 
-                     }
 
-                 }
 
-             ]
 
-         }
 
-         req.set_Policy(Policy=json.dumps(policys))
 
-         body = clt.do_action(req)
 
-         # body = clt.do_action_with_exception(req)
 
-         # 使用RAM账号的AccessKeyId和AccessKeySecret向STS申请临时token。
 
-         token = json.loads(body)
 
-         print(token)
 
-         res = {
 
-             'AccessKeyId': token['Credentials']['AccessKeyId'],
 
-             'AccessKeySecret': token['Credentials']['AccessKeySecret'],
 
-             'SecurityToken': token['Credentials']['SecurityToken'],
 
-             'Expiration': token['Credentials']['Expiration'],
 
-             'expire': '3600',
 
-             'endpoint': endpoint,
 
-             'bucket_name': bucket_name,
 
-             'arn': token['AssumedRoleUser']['Arn']
 
-         }
 
-         return JsonResponse(status=200, data=res)
 
-     def qiniutokentest(self):
 
-         # flake8: noqa
 
-         from qiniu import Auth
 
-         # 需要填写你的 Access Key 和 Secret Key
 
-         access_key = 'dwdHw1pQ9wFNiHDdflBUiZyWmiLppd5VCC2yF0O_'
 
-         secret_key = 'uTn7hdKD9Mbf2dzMWjLj2e9V1nXN7HAsOGRKwqDF'
 
-         # 构建鉴权对象
 
-         q = Auth(access_key, secret_key)
 
-         # 要上传的空间
 
-         bucket_name = 'test'
 
-         # 上传到七牛后保存的文件名
 
-         key = '/*'
 
-         # 生成上传 Token,可以指定过期时间等
 
-         # 上传策略示例
 
-         # https://developer.qiniu.com/kodo/manual/1206/put-policy
 
-         policy = {
 
-             # 'callbackUrl':'https://requestb.in/1c7q2d31',
 
-             # 'callbackBody':'filename=$(fname)&filesize=$(fsize)'
 
-             # 'persistentOps':'imageView2/1/w/200/h/200'
 
-         }
 
-         # 3600为token过期时间,秒为单位。3600等于一小时
 
-         token = q.upload_token(bucket_name, key, 3600, policy)
 
-         print(token)
 
-         return HttpResponse(content=token, status=200)
 
-     def paypaytest(self, request):
 
-         '''
 
-                :param request:
 
-                :param args:
 
-                :param kwargs:
 
-                :return:
 
-                '''
 
-         response = ResponseObject()
 
-         # return response.json(0)
 
-         paymentId = request.GET.get('paymentId', None)
 
-         PayerID = request.GET.get('PayerID', None)
 
-         if paymentId and PayerID:
 
-             paypalrestsdk.configure({
 
-                 "mode": "sandbox",  # sandbox or live
 
-                 "client_id": "AfnfDqezODOoWGS-W2Itu-Zl1ay1R95IsGlMqPghPA3KGhkPndNMnQT0bdEewvSv92XAFIfLiinmyhBL",
 
-                 "client_secret": "EErLskwYA1xXY3890mHx5OhzgK83B2rNc57zIozGNyKc8i6RJuhPTF9WyhhdZgyDEih0heo1MH9Jk1lj"
 
-             })
 
-             # ID of the payment. This ID is provided when creating payment.
 
-             payment = paypalrestsdk.Payment.find(paymentId)
 
-             payres = payment.execute({"payer_id": PayerID})
 
-             print(payres)
 
-             if payres:
 
-                 print("Payment execute successfully")
 
-             else:
 
-                 print(payment.error)  # Error Hash
 
-             return response.json(0)
 
-         else:
 
-             pass
 
-         paypalrestsdk.configure({
 
-             "mode": "sandbox",  # sandbox or live
 
-             "client_id": "AfnfDqezODOoWGS-W2Itu-Zl1ay1R95IsGlMqPghPA3KGhkPndNMnQT0bdEewvSv92XAFIfLiinmyhBL",
 
-             "client_secret": "EErLskwYA1xXY3890mHx5OhzgK83B2rNc57zIozGNyKc8i6RJuhPTF9WyhhdZgyDEih0heo1MH9Jk1lj"})
 
-         payment = paypalrestsdk.Payment({
 
-             "intent": "sale",
 
-             "payer": {
 
-                 "payment_method": "paypal"},
 
-             "redirect_urls": {
 
-                 # "return_url": "http://192.168.136.45:3000/payment/execute",
 
-                 "return_url": "http://192.168.136.40:8077/Test",
 
-                 "cancel_url": "http://localhost:3000/"},
 
-             "transactions": [{
 
-                 "item_list": {
 
-                     "items": [{
 
-                         "name": "item",
 
-                         "sku": "item",
 
-                         "price": "5.00",
 
-                         "currency": "USD",
 
-                         "quantity": 1}]},
 
-                 "amount": {
 
-                     "total": "5.00",
 
-                     "currency": "USD"},
 
-                 "description": "This is the payment transaction description."}]})
 
-         if payment.create():
 
-             print("Payment created successfully")
 
-         else:
 
-             print(payment.error)
 
-         print(payment)
 
-         for link in payment.links:
 
-             if link.rel == "approval_url":
 
-                 # Convert to str to avoid Google App Engine Unicode issue
 
-                 # https://github.com/paypal/rest-api-sdk-python/pull/58
 
-                 approval_url = str(link.href)
 
-                 print("Redirect for approval: %s" % (approval_url))
 
-                 return HttpResponseRedirect(approval_url)
 
-     # 修改 资源改变
 
-     def put(self, request):
 
-         response = ResponseObject()
 
-         return response.json(0)
 
-     # 修改 属性改变
 
-     def PATCH(self, request):
 
-         response = ResponseObject()
 
-         return response.json(0)
 
-     # 删除
 
-     def delete(self, request):
 
-         response = ResponseObject()
 
-         return response.json(0)
 
-     def validation(self, request_dict, *args, **kwargs):
 
-         response = ResponseObject()
 
-         return response.json(0)
 
 
  |