UEditor後端請求規範

後端請求規範

與後臺通信的功能列表

ueditor和後臺通信的功能較多,這裏列一下編輯器和後臺通信的功能:

  1. 上傳圖片
  2. 拖放圖片上傳、粘貼板圖片上傳
  3. word文檔圖片轉存
  4. 截圖工具上傳
  5. 上傳塗鴉
  6. 上傳視頻
  7. 上傳附件
  8. 在線圖片管理
  9. 粘貼轉存遠程圖片

統一請求格式說明

爲了規範化前後端通信的請求,這裏統一規範前端請求格式和後端數據返回格式

  • 前端請求通過唯一的後臺文件 controller.php處理前端的請求
  • controller.php通過GET上的action參數,判斷是什麼類型的請求
  • 省去不必要的請求,去除塗鴉添加背景的請求,用前端FileReader讀取本地圖片代替
  • 請求返回數據的格式,常規返回json字符串,數據包含state屬性(成功時返回'SUCCESS',錯誤時返回錯誤信息)。
  • 請求支持jsonp請求格式,當請求有通過GET方式傳callback的參數時,返回json數據前後加上括號,再在前面加上callback的值,格式類似這樣:
     cb({"key": "value"})

請求格式規範

以下是各類型的請求說明

1. config

請求參數:

GET {"action": "config"}
POST "upfile": File Data
返回格式:
// 需要支持callback參數,返回jsonp格式
{
    "imageUrl": "http://localhost/ueditor/php/controller.php?action=uploadimage",
    "imagePath": "/ueditor/php/",
    "imageFieldName": "upfile",
    "imageMaxSize": 2048,
    "imageAllowFiles": [".png", ".jpg", ".jpeg", ".gif", ".bmp"]
}

2. uploadimage

請求參數:

GET {"action": "uploadimage"}
POST "upfile": File Data
返回格式:
{
    "state": "SUCCESS",
    "url": "upload/demo.jpg",
    "title": "demo.jpg",
    "original": "demo.jpg"
}

3. uploadscrawl

請求參數:

GET {"action": "uploadscrawl"}
POST "content": Base64 Data
返回格式:
{
    "state": "SUCCESS",
    "url": "upload/demo.jpg",
    "title": "demo.jpg",
    "original": "demo.jpg"
}

4. uploadvideo

請求參數:

GET {"action": "uploadvideo"}
POST "upfile": File Data
返回格式:
{
    "state": "SUCCESS",
    "url": "upload/demo.mp4",
    "title": "demo.mp4",
    "original": "demo.mp4"
}

5. uploadfile

請求參數:

GET {"action": "uploadfile"}
POST "upfile": File Data
返回格式:
{
    "state": "SUCCESS",
    "url": "upload/demo.zip",
    "title": "demo.zip",
    "original": "demo.zip"
}

6. listimage

請求參數:

GET {"action": "listimage", "start": 0, "size": 20}
返回格式:
// 需要支持callback參數,返回jsonp格式
{
    "state": "SUCCESS",
    "list": [{
        "url": "upload/1.jpg"
    }, {
        "url": "upload/2.jpg"
    }, ],
    "start": 20,
    "total": 100
}

7. catchimage

請求參數:

GET {
    "action": "catchimage",
     "source": [
     	"http://a.com/1.jpg",
        "http://a.com/2.jpg"
    ]
}
返回格式:
// 需要支持callback參數,返回jsonp格式
// list項的state屬性和最外面的state格式一致
{
    "state": "SUCCESS",
    "list": [{
        "url": "upload/1.jpg",
        "source": "http://b.com/2.jpg",
        "state": "SUCCESS"
    }, {
        "url": "upload/2.jpg",
        "source": "http://b.com/2.jpg",
        "state": "SUCCESS"
    }, ]
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章