def get_phone_num(request, ver): if request.method == 'GET': return JSONResponse("GET_PHONE") elif request.method == 'POST': data = JSONParser().parse(request) flg_identity = data.has_key('identity') flg_credit = data.has_key('credit') flg_token = data.has_key('token') flg_phone = data.has_key('phone') if not flg_token: return JSONResponse('Token is empty!') if not data['token'] == 'n35FudlypEEd0SSodacAWUc1sbhFD4': return JSONResponse('Token is invalid!') if not flg_phone: return JSONResponse('Phone is empty!') phone_num = data['phone'] tmp_data = { 'query': { 'match': { 'phone': phone_num }}} res = es.search( index='wafdata', body = tmp_data ) ret_cnt = res['hits']['total'] return JSONResponse(ret_cnt)
def addItem(request): if request.method == 'GET': return JSONResponse("GET") if request.method == 'POST': data = JSONParser().parse(request) flg_key = data.has_key('key') if not flg_key: return JSONResponse('key is empty!') access_key = data['key'] if cmp(access_key, "test"): return JSONResponse("access key error.") flg_domain = data.has_key('domain') if not flg_domain: result = {"error": "-1", "errmsg": "domain is empty"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8") from jsonrpc.proxy import ServiceProxy s = ServiceProxy('http://localhost:5000/json/') import awvs ins = awvs.AWVS() ins.auth({"email": "name", "password": "******"}) ins.addTask(['lua.ren\n', 'candylab.net\n']) result = {"error": "0", "errmsg": "none"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8")
def levels(request): """ List all code nurseries, or create a new snippet. """ if request.method == 'GET': d = DitchController() stat = d.getSystemStatus() return JSONResponse(stat, status=201) elif request.method == 'POST': data = JSONParser().parse(request) if data.has_key('zone'): d = DitchController() zone = data['zone'] if zone == 'north': d.runNorth() elif zone == 'south': d.runSouth() return JSONResponse({}, status=201) elif request.method == 'DELETE': print("Deleting. or stopping it") d = DitchController() d.allOff() return JSONResponse({}, status=201)
def mockconfig_history(request): testEnv = request.META.get('HTTP_TESTENV', 'unkown') decisionName = request.META.get('HTTP_' + 'decisionName'.upper(), 'unkown') configBranch = request.META.get('HTTP_' + 'configBranch'.upper(), 'unkown') if request.method == 'POST': # pass data = JSONParser().parse(request) # print data['title'] mockconfigHistory = None data['decisionName'] = decisionName if (data.has_key('id')): id = data.get('id') if id != "": mockconfigHistory = MockConfigHistory.objects.get(id=id) serializer = MockConfigHistorySerializer(mockconfigHistory, data=data) if serializer.is_valid(): serializer.save() # return JSONResponse(serializer.data) elif request.method == 'DELETE': data = JSONParser().parse(request) # print data for id in data: if len(MockConfigHistory.objects.filter(id=id)) > 0: mockconfigHistory = MockConfigHistory.objects.get(id=id) mockconfigHistory.delete() # return HttpResponse(status=204) mockconfigHistory = MockConfigHistory.objects.filter( decisionName=decisionName) serializer = MockConfigHistorySerializer(mockconfigHistory, many=True) return JSONResponse(serializer.data)
def mockconfig_list(request): testEnv = request.META.get('HTTP_TESTENV', 'unkown') decisionName = request.META.get('HTTP_' + 'decisionName'.upper(), 'unkown') configBranch = request.META.get('HTTP_' + 'configBranch'.upper(), 'unkown') if request.method == 'POST': # pass data = JSONParser().parse(request) # data['testEnv'] = decisionName data['decisionName'] = decisionName mockconfig = None if (data.has_key('id')): id = data.get('id') mockconfig = MockConfig.objects.get(id=id) serializer = MockConfigSerializer(mockconfig, data=data) if serializer.is_valid(): serializer.save() # return JSONResponse(serializer.data) elif request.method == 'DELETE': data = JSONParser().parse(request) id = data.get('id') # print id mockconfig = MockConfig.objects.get(id=id) mockconfig.delete() # return HttpResponse(status=204) mockconfig = MockConfig.objects.filter(decisionName=decisionName) # mockconfig = MockConfig.objects.all() serializer = MockConfigSerializer(mockconfig, many=True) return JSONResponse(serializer.data)
def strategy_list(request): """ 展示所以snippets,或创建新的snippet """ if request.method == 'GET': strategy = Strategy.objects.filter(isDelete=False) serializer = StrategySerializer(strategy, many=True) return JSONResponse(serializer.data) elif request.method == 'POST': data = JSONParser().parse(request) # print 'data:' # print data strategy = None try: if (data.has_key('id')): id = data.get('id') strategy = Strategy.objects.get(id=id) if (data.has_key("strategyfiled")): for fieldData in data.get("strategyfiled"): field = None fieldData['strategy'] = id if fieldData.has_key('id'): field = StrategyFiled.objects.get( id=fieldData.get('id')) fieldSerializer = StrategyFiledSerializer(field, data=fieldData) if fieldSerializer.is_valid(): fieldSerializer.save() strategSerializer = StrategySerializer(strategy, data=data) if strategSerializer.is_valid(): strategSerializer.save() except Strategy.DoesNotExist: return HttpResponse(status=404) strategy = Strategy.objects.filter(isDelete=False) serializer = StrategySerializer(strategy, many=True) return JSONResponse(serializer.data)
def SendWxMessage(request): #print request.method if request.method == 'GET': return JSONResponse("GET dealChangeStaff") if request.method == 'POST': data = JSONParser().parse(request) flg_message = data.has_key('message') xmessage = data['message'] access_key = data['access_key'] if cmp(access_key, "testkey"): return JSONResponse("key") return HttpResponse('done', content_type="text/plain")
def count(parent_path, **kwargs): logger.info("parent_path: %s, kwargs: %s" % (parent_path, kwargs)) if not parent_path or parent_path == '/': ws_url = settings.ZTREE_WS_BASE_URL + '/count' else: ws_url = settings.ZTREE_WS_BASE_URL + parent_path + '/count' resp = dispatch_request_json(ws_url, data=kwargs) if resp: #resp_py = simplejson.load(StringIO(resp)) resp_py = JSONParser().parse( BytesIO(resp) ) # did we get a dict back and has it got a 'count' key if type(resp_py) == type({}) and resp_py.has_key('count'): node_count = int(resp_py['count']) logger.debug("got node count: " % node_count) return (node_count, None) logger.error("could NOT get count") return (0, None)
def count(parent_path, **kwargs): logger.info("parent_path: %s, kwargs: %s" % (parent_path, kwargs)) if not parent_path or parent_path == '/': ws_url = settings.ZTREE_WS_BASE_URL + '/count' else: ws_url = settings.ZTREE_WS_BASE_URL + parent_path + '/count' resp = dispatch_request_json(ws_url, data=kwargs) if resp: #resp_py = simplejson.load(StringIO(resp)) resp_py = JSONParser().parse(BytesIO(resp)) # did we get a dict back and has it got a 'count' key if type(resp_py) == type({}) and resp_py.has_key('count'): node_count = int(resp_py['count']) logger.debug("got node count: " % node_count) return (node_count, None) logger.error("could NOT get count") return (0, None)
def team_list(request): """ List all team members, or create a new snippet. """ if request.method == 'GET': members = Members.objects.all() serializer = MembersSerializer(members, many=True) return JsonResponse(serializer.data, safe=False) elif request.method == 'POST': data = JSONParser().parse(request) flag = 0 """ Checking if data is present or not """ if not (data): return JsonResponse(get_message(flag), status=400) keys = ['first_name', 'last_name', 'phone', 'email', 'role'] for key in keys: """ Validating if the keys used are correct or not """ if data.has_key(key): flag = 2 if data[key]: flag = 1 break if flag == 1: serializer = MembersSerializer(data=data) if serializer.is_valid(): serializer.save() return JsonResponse(serializer.data, status=201) return JsonResponse(serializer.errors, status=400) elif flag == 2: return JsonResponse(get_message(flag), status=400) else: return JsonResponse(get_message(3), status=400)
def post(self, request): """ get data from request """ try: data = JSONParser().parse(request) data = data.get(PARAMETER_DATA) except JSONDecodeError: raise ParseError(detail="No data found on the request") ''' extract data from post body. first check if all variables are True ''' if not all( ( data.has_key(PARAMETER_EMAIL), data.has_key(PARAMETER_FULL_NAME), data.has_key(PARAMETER_ID) ) ): raise ParseError("Some parameters are missing from request") ''' get all data from request ''' social_id = WebRequestParameter.get_data(PARAMETER_ID, data) email = WebRequestParameter.get_data(PARAMETER_EMAIL, data) name = WebRequestParameter.get_data(PARAMETER_FULL_NAME, data) uuid = WebRequestParameter.get_data(PARAMETER_UUID, data) avatar = WebRequestParameter.get_data(PARAMETER_AVATAR, data) social_token = WebRequestParameter.get_data(PARAMETER_TOKEN, data) ''' check if user exists ''' user = User.objects(email=email, is_active=True).first() if user is None: ''' create new user using email address''' user = User(email=email, username=email) if len(name) > 0: first_name, last_name = name.split(" ") user.first_name = first_name user.last_name = last_name user.name = name user.last_login_time = datetime.datetime.now() user.is_active = True try: user.save() user.uid = str(user.id) except: traceback.print_exc() raise APIException("Unable to save user data in DB. Try again later!") """ add device push token """ device_type = WebRequestParameter.get_data(PARAMETER_DEVICE, data) if device_type: push_token = WebRequestParameter.get_data(PARAMETER_PUSH_TOKEN, data) if push_token: ''' create and add device type ''' device_obj = Device(type=device_type, push_token=push_token) user.devices.append(device_obj) """ get or create social connector """ registration_type = WebRequestParameter.get_data(PARAMETER_REGISTRATION, data) if registration_type: connector = dict(id=social_id) token = WebRequestParameter.get_data(PARAMETER_TOKEN, data) if token: connector[PARAMETER_TOKEN] = token ''' create social connector ''' social_link = {registration_type : connector} UserManager().get_or_create_social_connector(uid=str(user.id), social_link=social_link) ''' generate new token ''' auth_token = AuthToken().generate_auth_token() user.auth_token = auth_token ''' save user object ''' try: user.save() except: raise APIException("Unable to save user data!") ''' save token in cache ''' cache_data = dict(uid=user.id, name=name, user=user) cache.set(auth_token, cache_data, ten_minutes_in_seconds) ''' mark user as available ''' try: online = OnlineChecker(user.uid) online.is_available() except Exception: traceback.print_exc() pass ''' return user token ''' user_token = dict(uid=str(user.id), token=auth_token, valability=ten_minutes_in_seconds) """ return response """ return Response(user_token)
def report_list(request): """ 展示所以snippets,或创建新的snippet """ # import sys # reload(sys) # sys.setdefaultencoding('utf8') if request.method == 'GET': reports = ReportHistory.objects.filter(isDelete=False) serializer = ReportWithoutFieldSerializer(reports, many=True) return JSONResponse(serializer.data) elif request.method == 'POST': strategyAliasMap = { "M_QD_FA1": "查询反欺诈1", "M_QD_FB1": "查询反欺诈2", "M_QD_FL1": "查询终审包", "M_QD_SE1": "查询评分卡", "M_QD_CT1": "查询额度包" } data = JSONParser().parse(request) # print 'data:' # print data cid = data.get('cid') report = None try: if (data.has_key('id')): id = data.get('id') report = ReportHistory.objects.get(id=id) reportSerializer = ReportWithoutFieldSerializer(report, data=data) if reportSerializer.is_valid(): report = reportSerializer.save() if (data.has_key('id')): return JSONResponse(reportSerializer.data) (allinputField, alloutputField, allStrategy) = createReport(cid) data['content'] = json.dumps(allStrategy, ensure_ascii=False) reportSerializer = ReportWithoutFieldSerializer(report, data=data) if reportSerializer.is_valid(): report = reportSerializer.save() if (data.has_key('id')): return JSONResponse(reportSerializer.data) for key in alloutputField: # print key strategyAlias = key strategyFilter = Strategy.objects.filter(alias=strategyAlias) if strategyFilter.count() == 1: # print "策略包存在。" strategy = Strategy.objects.get(alias=strategyAlias) for key, value in alloutputField[strategyAlias].items(): tmp = {} tmp['paramType'] = 'output' tmp['report'] = report.id tmp['strategyAlias'] = strategyAlias tmp['interface'] = key tmp['currentValueType'] = type(value).__name__ # print "strategy.id:" # print strategy.id if strategy: fieldFilter = StrategyFiled.objects.filter( strategy=strategy.id, interface=key) # print "fieldFilter:" # print fieldFilter if fieldFilter.count() == 1: tmp['field'] = StrategyFiled.objects.get( strategy=strategy.id, interface=key).id # print "字段存在。" # print type(value) # tmp['field'] = 'b646d718-65f6-4054-9daa-aa220b9c1fd5' if type(value) == (type(u"")): tmp['currentValue'] = value tmp['currentValueType'] = 'str' else: tmp['currentValue'] = str(value) # print tmp fieldSerializer = ReportFieldSerializer(data=tmp) if fieldSerializer.is_valid(): pass fieldSerializer.save() else: pass # print fieldSerializer.error_messages # print fieldSerializer.errors for key in allinputField: # print key strategyAlias = key strategyFilter = Strategy.objects.filter( alias=strategyAlias) if strategyFilter.count() == 1: # print "策略包存在。" strategy = Strategy.objects.get(alias=strategyAlias) for key, value in allinputField[strategyAlias].items(): tmp = {} tmp['paramType'] = 'input' tmp['report'] = report.id tmp['strategyAlias'] = strategyAlias tmp['interface'] = key tmp['currentValueType'] = type(value).__name__ # print "strategy.id:" # print strategy.id if strategy: fieldFilter = StrategyFiled.objects.filter( strategy=strategy.id, interface=key) # print "fieldFilter:" # print fieldFilter if fieldFilter.count() == 1: tmp['field'] = StrategyFiled.objects.get( strategy=strategy.id, interface=key).id # print "字段存在。" # print type(value) # tmp['field'] = 'b646d718-65f6-4054-9daa-aa220b9c1fd5' if type(value) == (type(u"")): tmp['currentValue'] = value tmp['currentValueType'] = 'str' else: tmp['currentValue'] = str(value) # print tmp fieldSerializer = ReportFieldSerializer(data=tmp) if fieldSerializer.is_valid(): pass fieldSerializer.save() else: pass # print fieldSerializer.error_messages # print fieldSerializer.errors serializer = ReportWithoutFieldSerializer(report) return JSONResponse(serializer.data) except ReportHistory.DoesNotExist: return HttpResponse(status=404)
def dealRouteChange(request): print request.method if request.method == 'GET': return JSONResponse("GET") if request.method == 'POST': data = JSONParser().parse(request) flg_source = data.has_key('source') flg_domain = data.has_key('domain') flg_index = data.has_key('index') flg_file = data.has_key('file') flg_params = data.has_key('params') flg_params = data.has_key('content') flg_key = data.has_key('key') if not flg_key: return JSONResponse('key is empty!') access_key = data['key'] if cmp(access_key, "test"): return JSONResponse("access key error.") flg_source = data.has_key('source') if not flg_source: result = {"error": "-1", "errmsg": "source is empty"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8") flg_domain = data.has_key('domain') if not flg_domain: result = {"error": "-1", "errmsg": "domain is empty"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8") flg_index = data.has_key('index') if not flg_index: result = {"error": "-1", "errmsg": "index is empty"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8") flg_file = data.has_key('file') if not flg_file: result = {"error": "-1", "errmsg": "file is empty"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8") flg_params = data.has_key('params') if not flg_params: result = {"error": "-1", "errmsg": "params is empty"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8") flg_content = data.has_key('content') if not flg_content: result = {"error": "-1", "errmsg": "content is empty"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8") msg = data from jsonrpc.proxy import ServiceProxy s = ServiceProxy('http://localhost:5000/json/') s.myapp.sayHello('Sam') result = {"error": "0", "errmsg": "none"} return HttpResponse(json.dumps(result, ensure_ascii=False), content_type="application/json,charset=utf-8")