1. 程式人生 > >UEditor自定義請求引數

UEditor自定義請求引數

自定義請求引數

很多情境下,編輯器與後臺通訊需要有登入狀態,很多時候後臺需要額外的引數。 UEditor 自1.4.0版本提供設定額外引數的命令serverparam命令,可動態設定自定義引數表。 在向後臺發出請求時,會把引數表以GET方式加到請求裡。

另外,編輯器上傳使用webuploader外掛,在低版本的ie下,瀏覽器使用Flash形式的上傳。 flash傳送的請求不帶有cookie,這裡也需要額外的引數,讓後臺判斷是否登入。

設定自定義引數表

通過serverparam命令設定自定義引數表,有四種呼叫方式,看下面的例子(下文的ue指編輯器例項):

  1. /* 1.傳入函式,命令裡執行該函式得到引數表,新增到已有引數表裡 */

  2. ue.ready(function() {

  3. ue.execCommand('serverparam', function(editor) {

  4. return {

  5. 'key': 'value'

  6. };

  7. }

  8. };

  9. });

  1. /* 2.傳入引數表,新增到已有引數表裡 */

  2. ue.ready(function() {

  3. ue.execCommand('serverparam', {

  4. 'key': 'value'

  5. });

  6. });

  1. /* 3.按照鍵值新增引數 */

  2. ue.ready(function() {

  3. ue.execCommand('serverparam', 'key', 'value');

  4. });

  1. /* 4.清除引數表 */

  2. ue.ready(function() {

  3. ue.execCommand('serverparam'

  4. };

  5. });

查詢自定義引數表

前端發出請求時,會通過queryCommandValue方法,查詢當前自定義引數表,把引數表以GET方式加到請求裡:

  1. ue.ready(function() {

  2. ue.queryCommandValue('serverparam'); //返回引數值鍵值對的物件

  3. });

使用例子

  1. var ue = UE.getEditor('container');

  2. ue.ready(function() {

  3. ue.execCommand('serverparam', {

  4. 'key1': 'value1',

  5. 'key2': 'value2',

  6. });

  7. });

提交請求的時候會把key1和key2一起以GET的方式傳送到後臺。後臺再通過$GET["key1"]和$GET["key2"]獲取key1和key2的值。