UEditor自定義請求引數
自定義請求引數
很多情境下,編輯器與後臺通訊需要有登入狀態,很多時候後臺需要額外的引數。 UEditor 自1.4.0版本提供設定額外引數的命令serverparam命令,可動態設定自定義引數表。 在向後臺發出請求時,會把引數表以GET方式加到請求裡。
另外,編輯器上傳使用webuploader外掛,在低版本的ie下,瀏覽器使用Flash形式的上傳。 flash傳送的請求不帶有cookie,這裡也需要額外的引數,讓後臺判斷是否登入。
設定自定義引數表
通過serverparam命令設定自定義引數表,有四種呼叫方式,看下面的例子(下文的ue指編輯器例項):
-
/* 1.傳入函式,命令裡執行該函式得到引數表,新增到已有引數表裡 */
-
ue.ready(function() {
-
ue.execCommand('serverparam', function(editor) {
-
return {
-
'key': 'value'
-
};
-
}
-
};
-
});
-
/* 2.傳入引數表,新增到已有引數表裡 */
-
ue.ready(function() {
-
ue.execCommand('serverparam', {
-
'key': 'value'
-
});
-
});
-
/* 3.按照鍵值新增引數 */
-
ue.ready(function() {
-
ue.execCommand('serverparam', 'key', 'value');
-
});
-
/* 4.清除引數表 */
-
ue.ready(function() {
-
ue.execCommand('serverparam'
-
};
-
});
查詢自定義引數表
前端發出請求時,會通過queryCommandValue方法,查詢當前自定義引數表,把引數表以GET方式加到請求裡:
-
ue.ready(function() {
-
ue.queryCommandValue('serverparam'); //返回引數值鍵值對的物件
-
});
使用例子
-
var ue = UE.getEditor('container');
-
ue.ready(function() {
-
ue.execCommand('serverparam', {
-
'key1': 'value1',
-
'key2': 'value2',
-
});
-
});
提交請求的時候會把key1和key2一起以GET的方式傳送到後臺。後臺再通過$GET["key1"]和$GET["key2"]獲取key1和key2的值。