Use POST instead of PUT for file upload
This commit is contained in:
		
							parent
							
								
									a445a7c1d2
								
							
						
					
					
						commit
						296628b21d
					
				| @ -62,12 +62,12 @@ class RESTView(object): | ||||
|                 buf = infile.read(BLOCKSIZE) | ||||
|         return hasher.hexdigest() | ||||
| 
 | ||||
|     @view_config(request_method='PUT') | ||||
|     def put(self): | ||||
|     @view_config(request_method='POST') | ||||
|     def post(self): | ||||
|         try: | ||||
|             # Create a fresh uuid for the new file | ||||
|             file_id = str(uuid.uuid4()) | ||||
|             # Use PUT /files to create a new file | ||||
|             # Use POST /files to create a new file | ||||
|             input_file = self.request.POST['file'].file | ||||
|             # Write the data into a temporary file | ||||
|             temp_file_path = os.path.join(self.path_tmp, '%s' % file_id) + '~' | ||||
|  | ||||
| @ -13,7 +13,7 @@ $(document).ready(function() { | ||||
|             contentType: false, | ||||
|             processData: false, | ||||
|             data: form_data,                          | ||||
|             type: 'PUT', | ||||
|             type: 'POST', | ||||
|             success: function(response_text){ | ||||
|                 response = $.parseJSON(response_text); | ||||
|                 displayAttributes = ['uuid', 'key', 'name', 'size', 'create_utc', 'md5', 'sha1', 'sha256']; | ||||
|  | ||||
| @ -11,11 +11,11 @@ | ||||
|   <h1>Welcome!</h1> | ||||
|   <p> | ||||
|     This site enables users to upload files for temporary or permanent access. | ||||
|     Since the PUT method of the API is used to upload files, please enable javascript. | ||||
|     Since the POST method of the API is used to upload files, please enable javascript. | ||||
|   </p> | ||||
|   <p> | ||||
|     Use this command to upload a file using curl: | ||||
|     <pre>curl -X PUT {{ request.route_url('files') }} -F "file=@/path/to/your/file"</pre> | ||||
|     <pre>curl -X POST {{ request.route_url('files') }} -F "file=@/path/to/your/file"</pre> | ||||
|     You will get a JSON response containing a bunch of checksums and a <b>key</b>. | ||||
|     Take good care of it, as <b>the key it is your only way to delete the file later</b>!  | ||||
|     In order to <b>delete</b> a file, use this curl command: | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user