# -*-coding:utf-8 -*- import json import base64 import os import time import upload_to_oss as upload from django.shortcuts import render from django.http import HttpResponse from django.core.serializers.json import DjangoJSONEncoder def get_user_from_request(request): user = request.session.get("user", None) return user def JsonResponse(data): response = HttpResponse(json.dumps(data, cls=DjangoJSONEncoder), content_type="application/json") response['Access-Control-Allow-Origin'] = '*' return response def params(func): def _wrapper(*args, **kargs): request = args[0] if request.method == "GET": request.PARAMS = request.GET elif request.method == "POST" or request.method == "DELETE": if request.META.get('CONTENT_TYPE') == "application/json": request.PARAMS = json.loads(request.body) if request.body else {} else: request.PARAMS = request.POST elif request.method == "OPTIONS": return JsonResponse({"code": 0, "msg": "success11"}) else: request.PARAMS = {} return func(*args, **kargs) return _wrapper def login_required(func): def _wrapper(*args, **kargs): request = args[0] print request.session.keys() if not ("user" in request.session): # return HttpResponseRedirect("/accounts/login/") res = {"code": 2, "msg": u"您尚未登录,请先登录!"} return JsonResponse(res) return func(*args, **kargs) return _wrapper def save_bs64img_local(img_base64): if img_base64: list_strs = img_base64.split(",") if len(list_strs)>1: img_name = list_strs[0] img_str = list_strs[1] print(img_name) else: print("图片数据类型错误!") return if img_str: imgdata = base64.b64decode(img_str) path = os.path.dirname(os.path.realpath(__file__)) path = os.path.join(path,"img") print(path) get_time_name = str(int(time.time()))+'.png' print(get_time_name) img_name = get_time_name tmp_path = os.path.join(path,img_name) f=open(tmp_path,'wb') f.write(imgdata) f.close() myoss = upload.MyOSS() url = myoss.upload_from_local(tmp_path,img_name) # 删除本地文件 os.remove(tmp_path) print(url) return url else: return print("图片错误!") if __name__ == '__main__': img_base64 = 'huhu,iVBORw0KGgoAAAANSUhEUgAAABwAAAAaCAYAAACkVDyJAAADEUlEQVRIS73VW2gUZxTA8f/MrtlsTK2oYFSEVDcq1kZnsyZNsgkpWlHEhyDWKrQgSoIVMYiiWBHBiNQk4N2WzUsrTUERVNRi0wcffPChoi9WCbEEkWhRKDG7Zi8zc2S+yWqsyRqTrPMyA9/lN+d8Z85osrTkY+LWZYQwWbu0bjTOMC2wT3MMWVPu53H8PCIrsmY6G2vaDwpUaF3JOP62f0Hk6/dFTSOEVWzg+znyemmOD2t2EVbRXOyCaeRGToLQ/QpU6P79Ou0XT4BsHg5qBeYSr9sCuo41K4Cns0Mt8539lb6GXXjv3MLTcR9Pxz11x7Z5A3wVbWXwINh73olqGmZFFfq/T9AfdmEGS9F6eyCRIFn7Ff6mxre2GBRU0YaN7Yg0O5kfEnYiKzZIVVaTGznFi30H8Z9owc6fQLJ2zfuBLhrcABJBxDMYaobKSKx2j9ya9yme+3fVc861K/R914D+7CkyeQrEYvgunCPn0vkMb58upnCwFuzfEHyZUtzb2sZHm9arKXZgDon+lMY3N+C9eQPv7b/U2NDpGrC7VBlLELmAkD8QtWfMpG/n926EhbPxdD1Qz7mtp0l+8SX+482MCFTprQqVYpu/A5MGolZgDlq0l1hjC3nHm9EfPcRcGMSePAXfubaRgy5qzMemHWR6Go0dPkZeUyPRQ0fwR05iBYrA48XzTyfeG9dHByq05vNCUgkHDTjRJdZ9S96BvagzrP+GeP1WzM8WMX7XNrTnPaMHFbqkbCqJ5B9mebhYi8VIhcowiw3yt9VhzwqQXLaS3B+PqiSM+Az/X6FSUzMRs+cKIhVOpPqTbrRo1J3m9YJpuhVbMB09+hz6x4ZVpUN9DrKqJI//bKfpL8/0yQwcGxWo0us0/bv2GZC1w0FHDSrUafp/XjyFSP270DEB04iEjUOI7M6Ejimooq1ctANoGgodc9BFjY1o/DRY088K2N+VVmNLm/PzGNMqzXReEjaWgmr649Pzshbh60IqKUOsq+mmn3XQ7b+hBaSsa07T/yCgQqtLP8FKtX8w0I10ccFL/I8wjQblgUIAAAAASUVORK5CYII=' save_bs64img_local(img_base64)