code: public void put(final byte[] data, final String key, final String token,
                      final UpCompletionHandler complete, final UploadOptions options) {
          final UpToken decodedToken = UpToken.parse(token);
          if (areInvalidArg(key, data, null, token, decodedToken, complete)) {
              return;
          }
  
          Zone z = config.zone;
          z.preQuery(token, new Zone.QueryHandler() {
              @Override
              public void onSuccess() {
                  FormUploader.upload(client, config, data, key, decodedToken, complete, options);
              }
  
              @Override
              public void onFailure(int reason) {
                  final ResponseInfo info = ResponseInfo.isStatusCodeForBrokenNetwork(reason) ?
                          ResponseInfo.networkError(reason, decodedToken) :
                          ResponseInfo.invalidToken("invalid token");
                  complete.complete(key, info, null);
              }
          });
  
      }
docs: 上传数据
  
  @param data     上传的数据
  @param key      上传数据保存的文件名
  @param token    上传凭证
  @param complete 上传完成后续处理动作
  @param options  上传数据的可选参数