在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java  PHP  Linux/ php 如何寫api給別人使用?

php 如何寫api給別人使用?

我現(xiàn)在需要寫一隻api
是讓別人可以上傳圖片到我的伺服器上的特定目錄夾
但我不知道怎麼著手?
概念是
對方透過 enctype="multipart/form-data"
可以把圖片丟到我這裡
我會用json回傳URL給對方

上傳機制我已經(jīng)有了

$_FILES['myFile_avatar']
move_uploaded_file
回答
編輯回答
舊時光
  1. 首先整理下需求,別人上傳到你的伺服器,只上傳文檔么?需不需要額外訊息?
  2. 其次需要設計接口:是不是需要統(tǒng)一化的目錄?比如URL可以是www.xxx.com/api/postFile,那么這個需求怎么通過URL Rewrite來實現(xiàn);另外通訊使用的方法是GET還是POST(不過你這個比較明顯需要用到POST);怎么處理用戶發(fā)過來的額外訊息;用戶調(diào)用接口后返回的正確/錯誤信息等。
  3. 上邊這些,一個個解決掉,然后整理成接口文檔。
  4. 功能上線聯(lián)調(diào)。
2017年11月27日 19:18
編輯回答
舊顏

api 所在的域名是否和 api調(diào)用方 所在的域名是一致的??如果不一致,則要考慮下跨域的問題。

假設 api 所在的域名是:http://api.com,調(diào)用方所在的域名是 http://get.com。

我定義了一個 api 如下:

// 如果是api和調(diào)用方在同一個域名下,那么不用加這個頭部
// 這邊由于跨域!所以需要加 cors 相關頭部
// 具體含義請百度
header('Access-Control-Allow-Origin: http://get.com');
header('Access-Control-Allow-Credentials: true');

class UploadFile {
    public function upload(){
        // 圖片上傳處理 ...
    }
}

調(diào)用的時候 http://api.com/UploadFile/upload 然后加上所需的參數(shù)。


調(diào)用方 js

var apiUrl = 'http://api.com/UploadFile/upload';
// 構造表單對象
var formData = new FormData();
    // 添加文件
    formData.append('file' , file);
var xhr = new XMLHttpRequest();
    xhr.open('post' , apiUrl , true);
    xhr.onreadystatechange = function(){
        ...
    };
    xhr.send(formData);
2017年10月14日 13:09