in src/providers/ecs_ram_role.ts [90:117]
private async getRoleName(): Promise<string> {
const builder = Request.builder()
.withMethod('GET')
.withProtocol('http')
.withHost('100.100.100.200')
.withPath('/latest/meta-data/ram/security-credentials/')
.withReadTimeout(this.readTimeout || 1000)
.withConnectTimeout(this.connectTimeout || 1000);
const metadataToken = await this.getMetadataToken();
if (metadataToken !== null) {
builder.withHeaders({
'x-aliyun-ecs-metadata-token': metadataToken
});
}
// ConnectTimeout: 5 * time.Second,
// ReadTimeout: 5 * time.Second,
const request = builder.build();
const response = await this.doRequest(request);
if (response.statusCode !== 200) {
throw new Error(`get role name failed: ${request.method} ${request.toRequestURL()} ${response.statusCode}`);
}
return response.body.toString().trim();
}