def dispatch(self, request, *args, **kwargs): user = request.user if user and user.is_superuser: data = json.loads(request.body) response = requests.post(f'{MED_RECORDS_URL}/api/', json=data) response = JsonResponse(response.json(), status=200) else: response = JsonResponse({'authentication-error': True}, status=503) return response
def assertResponseError( self, response: http.JsonResponse, error: Union[errors.APIError, Type[errors.APIError]] = None ) -> Tuple[int, str]: content = response.json() self.assertGreaterEqual(response.status_code, 400, (response.status_code, content)) self.assertIn('error', content, content) if error is not None: if isinstance(error, type): error = error() self.assertEqual(response.status_code, error.status, (response.status_code, content)) self.assertEqual(content['error'], error.message, (response.status_code, content)) return response.status_code, content['error']
def lookup_regulations_gov(*args, **kwargs): """ GET lookup values from regulations.gov. Use a cache """ cache = caches['regs_gov_cache'] cache_key = make_cache_key(**kwargs) response = cache.get(cache_key) if response is None: logger.debug("Looking up in regs.gov") response = requests.get( settings.REGS_GOV_API_LOOKUP_URL, params=kwargs, headers={'X-Api-Key': settings.REGS_GOV_API_KEY}) if response.status_code == requests.codes.ok: response = JsonResponse(response.json()['list'], safe=False) cache.set(cache_key, response) else: logger.error("Failed to lookup regulations.gov: {}", response.status_code, response.text) response.raise_for_status() return response
def pay(request): if request.method == "POST": data = JSONParser().parse(request) print(data) URL = 'https://kapi.kakao.com/v1/payment/ready' headers = { "Authorization": "KakaoAK " + app_admin_key, "Content-type": "application/x-www-form-urlencoded;charset=utf-8", # 변경불가 } params = { "cid": "TC0ONETIME", # 테스트용 코드 "partner_order_id": "1001", # 주문번호 "partner_user_id": "userid", # 유저 아이디 "item_name": data['item_name'], # 구매 물품 이름 "quantity": "1", # 구매 물품 수량 "total_amount": data['total_amount'], # 구매 물품 가격 "tax_free_amount": "0", # 구매 물품 비과세 "approval_url": server_url + "#/pay", # /approval", "cancel_url": server_url + "500/결제가 취소되었습니다.", "fail_url": server_url + "500/결제가 실패하였습니다", } print("들어옵니까?") res = requests.post(URL, headers=headers, params=params) # print(res.json()) # request.cookies = {"tid" : res.json()['tid'] } # request.session['tid'] = res.json()['tid'] # 결제 승인시 사용할 tid를 세션에 저장 tid = res.json()['tid'] print(tid) # cache.set('tid', tid, 60*60) # res.set_cookie('tid', tid, 60*60) # print("tid : " , cache.get("tid")) next_url = res.json()['next_redirect_pc_url'] # 결제 페이지로 넘어갈 url을 저장 # return redirect(next_url) res = JsonResponse(res.json()) # res.set_cookie('tid', tid) # request.session['tid'] = tid return res
def lookup_regulations_gov(*args, **kwargs): """ GET lookup values from regulations.gov. Use a cache """ cache = caches['regs_gov_cache'] cache_key = make_cache_key(**kwargs) response = cache.get(cache_key) if response is None: logger.debug("Looking up in regs.gov") response = requests.get( settings.REGS_GOV_API_LOOKUP_URL, params=kwargs, headers={'X-Api-Key': settings.REGS_GOV_API_KEY} ) if response.status_code == requests.codes.ok: response = JsonResponse(response.json()['list'], safe=False) cache.set(cache_key, response) else: logger.error("Failed to lookup regulations.gov: {}", response.status_code, response.text) response.raise_for_status() return response
def assert_successful_json_response(response: http.JsonResponse, url: str) -> None: json = response.json() assert response.status_code == status.HTTP_200_OK assert json['success'] == True assert json['url'] == url