web/bundles/topxiaadmin/js/controller/uploader/baidu-strategy.js

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

define(function(require, exports, module) {

  var Class = require('class');

  var Cloud2Strategy = Class.extend({
    initialize: function(file, response) {
      file.gid = response.globalId;
      file.globalId = response.globalId;
      file.fileId = response.outerId;
      file.uploadUrl = response.uploadUrl;
      file.uploadProxyUrl = response.uploadProxyUrl;
      file.uploadMode = response.uploadMode;
      file.uploadId = response.uploadToken;

      var baiduParts = {
        parts: new Array()
      };
      file.baiduParts = baiduParts;

      if (file.initResponse && file.initResponse.uploadToken) {
        file.uploadId = file.initResponse.uploadToken;
      }

      var self = file.uploaderWidget;

      self.uploader.option('method', 'POST');
      self.uploader.option('chunked', true);
      self.uploader.option('chunkSize', 1024 * 1024 * 5);
      self.uploader.option('sendAsBinary', true);
      self.uploader.option('threads', 5);

    },

    uploadBeforeSend: function(object, data, headers, tr) {
      var uploadAuthUrl = object.file.uploaderWidget.get('uploadAuthUrl');
      var partNumber = object.chunk + 1;
      var encryptParams = {
        "partNumber": partNumber,
        "uploadId": object.file.uploadId
      }
      var authResult = this._getUploadAuth(encryptParams, 'POST', uploadAuthUrl, object.file.gid);

      headers['x-bce-date'] = authResult['x-bce-date'];
      headers['Authorization'] = authResult['Authorization'];

      $.each(data, function(i, n) {
        delete data[i];
      });

      tr.options.server = object.file.uploadUrl + '?partNumber=' + partNumber + '&uploadId=' + object.file.uploadId;
    },

    _getUploadAuth: function(encryptParams, httpMethod, uploadAuthUrl, gid) {
      var result;
      $.ajax({
        url: uploadAuthUrl,
        type: 'POST',
        data: {
          "encryptParams": encryptParams,
          "globalId": gid,

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。