当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript http_request.openShardedHttpRequest函数代码示例

本文整理汇总了TypeScript中neuroglancer/util/http_request.openShardedHttpRequest函数的典型用法代码示例。如果您正苦于以下问题:TypeScript openShardedHttpRequest函数的具体用法?TypeScript openShardedHttpRequest怎么用?TypeScript openShardedHttpRequest使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了openShardedHttpRequest函数的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: start

 function start(credentials: CredentialsWithGeneration<Credentials>) {
   if (xhr === null) {
     return;
   }
   xhr = openShardedHttpRequest(instance.serverUrls, httpCall.path, httpCall.method);
   xhr.responseType = httpCall.responseType;
   xhr.setRequestHeader(
       'Authorization',
       `${credentials.credentials.tokenType} ${credentials.credentials.accessToken}`);
   xhr.onloadend = function(this: XMLHttpRequest) {
     if (xhr === null) {
       return;
     }
     let status = this.status;
     if (status >= 200 && status < 300) {
       cancellationToken.remove(abort);
       resolve(this.response);
     } else if (status === 401) {
       // 401: Authorization needed.  OAuth2 token may have expired.
       credentialsProvider.get(credentials, cancellationToken).then(start);
     } else if (status === 504 || status === 503) {
       // 503: Service unavailable.  Retry.
       // 504: Gateway timeout.  Can occur if the server takes too long to reply.  Retry.
       credentialsProvider.get(/*invalidToken=*/undefined, cancellationToken).then(start);
     } else {
       cancellationToken.remove(abort);
       reject(HttpError.fromXhr(this));
     }
   };
   xhr.send(httpCall.payload);
 }
开发者ID:google,项目名称:neuroglancer,代码行数:31,代码来源:api.ts

示例2: start

 function start(token: Token) {
   if (xhr === null) {
     --numPendingRequests;
     return;
   }
   xhr = openShardedHttpRequest(INSTANCE_BASE_URLS[instance], httpCall.path, httpCall.method);
   xhr.responseType = httpCall.responseType;
   xhr.setRequestHeader('Authorization', `${token['tokenType']} ${token['accessToken']}`);
   xhr.onloadend = function(this: XMLHttpRequest) {
     if (xhr === null) {
       --numPendingRequests;
       return;
     }
     let status = this.status;
     if (status >= 200 && status < 300) {
       --numPendingRequests;
       cancellationToken.remove(abort);
       resolve(this.response);
     } else if (status === 401) {
       // Authorization needed.
       getToken(token).then(start);
     } else if (status === 504) {
       // Gateway timeout can occur if the server takes too long to reply.  Retry.
       getToken().then(start);
     } else {
       --numPendingRequests;
       cancellationToken.remove(abort);
       reject(HttpError.fromXhr(this));
     }
   };
   xhr.send(httpCall.payload);
 }
开发者ID:janelia-flyem,项目名称:neuroglancer,代码行数:32,代码来源:api.ts

示例3: start

 function start(token: Token) {
   if (xhr === null) {
     --numPendingRequests;
     return;
   }
   xhr = openShardedHttpRequest(INSTANCE_BASE_URLS[instance], path, method);
   xhr.responseType = responseType;
   xhr.setRequestHeader('Authorization', `${token['tokenType']} ${token['accessToken']}`);
   xhr.onloadend = function(this: XMLHttpRequest) {
     if (xhr === null) {
       --numPendingRequests;
       return;
     }
     let status = this.status;
     if (status >= 200 && status < 300) {
       --numPendingRequests;
       resolve(this.response);
     } else if (status === 403 || status === 401) {
       // Authorization needed.
       getToken(token).then(start);
     } else {
       --numPendingRequests;
       reject(HttpError.fromXhr(this));
     }
   };
   xhr.send();
 }
开发者ID:funkey,项目名称:neuroglancer,代码行数:27,代码来源:api.ts

示例4: downloadFragment

 downloadFragment(chunk: FragmentChunk, cancellationToken: CancellationToken) {
   const {parameters} = this;
   const requestPath = `/api/node/${parameters['nodeKey']}/${parameters['dataInstanceKey']}/key/${
       chunk.fragmentId}.ngmesh`;
   return sendHttpRequest(
              openShardedHttpRequest(parameters.baseUrls, requestPath), 'arraybuffer',
              cancellationToken)
       .then(response => decodeFragmentChunk(chunk, response));
 }
开发者ID:google,项目名称:neuroglancer,代码行数:9,代码来源:backend.ts

示例5: getVolumeInfo

export function getVolumeInfo(hostnames: string[], token: string) {
  let fullKey = JSON.stringify({'hostnames': hostnames, 'token': token});
  let result = existingVolumeResponses.get(fullKey);
  if (result !== undefined) {
    return result;
  }
  let promise = sendHttpRequest(openShardedHttpRequest(hostnames, `/ocp/ca/${token}/info/`), 'json');
  existingVolumeResponses.set(fullKey, promise);
  return promise;
}
开发者ID:j6k4m8,项目名称:neuroglancer,代码行数:10,代码来源:frontend.ts

示例6: getShardedVolume

export function getShardedVolume(baseUrls: string[], path: string) {
  let fullKey = stableStringify({'baseUrls': baseUrls, 'path': path});
  let existingResult = existingVolumes.get(fullKey);
  if (existingResult !== undefined) {
    return existingResult;
  }
  let promise = sendHttpRequest(openShardedHttpRequest(baseUrls, path + '/info'), 'json')
                    .then(response => new MultiscaleVolumeChunkSource(baseUrls, path, response));
  existingVolumes.set(fullKey, promise);
  return promise;
}
开发者ID:funkey,项目名称:neuroglancer,代码行数:11,代码来源:frontend.ts

示例7: download

  download(chunk: VolumeChunk) {
    let params = this.parameters;
    let {chunkGridPosition} = chunk;

    // Needed by decoder.
    chunk.chunkDataSize = this.spec.chunkDataSize;
    let path = `/api/node/${params['nodeKey']}/${params['dataInstanceKey']}/tile/${params['dims']}/${params['level']}/${chunkGridPosition[0]}_${chunkGridPosition[1]}_${chunkGridPosition[2]}`;
    handleChunkDownloadPromise(
        chunk, sendHttpRequest(openShardedHttpRequest(params.baseUrls, path), 'arraybuffer'),
      this.chunkDecoder);
  }
开发者ID:j6k4m8,项目名称:neuroglancer,代码行数:11,代码来源:backend.ts

示例8: getPublicTokens

export function getPublicTokens(hostnames: string[]) {
  let key = JSON.stringify(hostnames);
  let result = publicTokenPromises.get(key);
  if (result !== undefined) {
    return result;
  }
  let newResult =
      sendHttpRequest(openShardedHttpRequest(hostnames, '/ocp/ca/public_tokens/'), 'json')
          .then(value => parseArray(value, verifyString));
  publicTokenPromises.set(key, newResult);
  return newResult;
}
开发者ID:j6k4m8,项目名称:neuroglancer,代码行数:12,代码来源:frontend.ts

示例9: download

  download(chunk: SkeletonChunk, cancellationToken: CancellationToken) {
    const {parameters} = this;
    let bodyid = `${chunk.objectId}`;
    const path = `/api/node/${parameters['nodeKey']}/${parameters['dataInstanceKey']}/key/` +
        bodyid + '_swc';

    return sendHttpRequest(
               openShardedHttpRequest(parameters.baseUrls, path), 'arraybuffer', cancellationToken)
        .then(response => {
          let enc = new TextDecoder('utf-8');
          decodeSwcSkeletonChunk(chunk, enc.decode(response));
        });
  }
开发者ID:google,项目名称:neuroglancer,代码行数:13,代码来源:backend.ts


注:本文中的neuroglancer/util/http_request.openShardedHttpRequest函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。