فهرست منبع

Add file upload support to Python example requests

shalvah 5 سال پیش
والد
کامیت
6b32e2880f
2فایلهای تغییر یافته به همراه19 افزوده شده و 10 حذف شده
  1. 19 1
      resources/views/partials/example-requests/python.blade.php
  2. 0 9
      todo.md

+ 19 - 1
resources/views/partials/example-requests/python.blade.php

@@ -3,6 +3,15 @@ import requests
 import json
 
 url = '{{ rtrim($baseUrl, '/') }}/{{ ltrim($route['boundUri'], '/') }}'
+@if(count($route['fileParameters']))
+files = {
+@foreach($route['fileParameters'] as $name => $file)
+  '{!! $name !!}': open('{!! $file->path() !!}', 'rb')@if(!($loop->last)),
+@endif
+@endforeach
+
+}
+@endif
 @if(count($route['cleanBodyParameters']))
 payload = {!! json_encode($route['cleanBodyParameters'], JSON_PRETTY_PRINT) !!}
 @endif
@@ -17,7 +26,16 @@ headers = {
 @endforeach
 
 }
+
 @endif
-response = requests.request('{{$route['methods'][0]}}', url{{ count($route['headers']) ?', headers=headers' : '' }}{{ count($route['cleanBodyParameters']) ? ', json=payload' : '' }}{{ count($route['cleanQueryParameters']) ? ', params=params' : ''}})
+@php
+$optionalArguments = [];
+if (count($route['headers'])) $optionalArguments[] = "headers=headers";
+if (count($route['fileParameters'])) $optionalArguments[] = "files=files";
+if (count($route['cleanBodyParameters'])) $optionalArguments[] = (count($route['fileParameters']) ? "data=payload" : "json=payload");
+if (count($route['cleanQueryParameters'])) $optionalArguments[] = "params=params";
+$optionalArguments = implode(', ',$optionalArguments);
+@endphp
+response = requests.request('{{$route['methods'][0]}}', url, {{ $optionalArguments }})
 response.json()
 ```

+ 0 - 9
todo.md

@@ -1,12 +1,3 @@
-# Documentation tasks
-- Rewritten docs. Some things to document:
-  - plugin api: responses - description, $stage property, scribe:strategy
-  - fileParams
-
 # Release blocker
 - Port recent changes from old repo
 
-# Features
-- Possible feature: https://github.com/mpociot/laravel-apidoc-generator/issues/731
-- file input python
-