如何通过api发送和接收文件。我想通过APi发送和接收pdf和图像文件。我怎么能这样做?例如,用户使用python发送文件(使用python进行API调用),我在端点(使用PHP)接收它并将其保存到文件系统。如何通过API发送和接收文件?
API端点仅接受application / json
当有人通过API向我发送文件(用python编写)时,如何使用PHP处理文件?
这是我到目前为止的解决方案:
base64对python端的文件进行编码 然后base64对PHP端的文件进行编码。
问题是我不知道如何通过base64解码它来检索文件。
有谁知道如何base64decode文件并将其内容保存到数据库?
答案 0 :(得分:1)
您必须使用FormData object
<form enctype="multipart/form-data" method="post" name="fileinfo">
<label>Your email address:</label>
<input type="email" autocomplete="on" autofocus name="userid" placeholder="email" required size="32" maxlength="64" /><br />
<label>Custom file label:</label>
<input type="text" name="filelabel" size="12" maxlength="32" /><br />
<label>File to stash:</label>
<input type="file" name="file" required />
<input type="submit" value="Stash the file!" />
</form>
<div></div>
和js
var fd = new FormData(document.querySelector("form"));
fd.append("CustomField", "This is some extra data");
$.ajax({
url: "stash.php",
type: "POST",
data: fd,
processData: false, // tell jQuery not to process the data
contentType: false // tell jQuery not to set contentType
});