New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

aliyun-api-gateway

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

aliyun-api-gateway - npm Package Compare versions

Comparing version 1.0.2 to 1.0.3

31

lib/client.js
'use strict';
const {parse, format} = require('url');
const querystring = require('querystring');
const crypto = require('crypto');

@@ -9,2 +8,3 @@

const httpx = require('httpx');
const debug = require('debug')('api-gateway');

@@ -25,3 +25,3 @@ const ua = require('./ua');

buildSignToString(method, headers, signedHeadersStr, url) {
buildStringToSign(method, headers, signedHeadersStr, url) {
// accept, contentMD5, contentType,

@@ -89,7 +89,13 @@ const lf = '\n';

buildUrl(parsedUrl, query) {
var toStringify = Object.assign({}, parsedUrl.query, query);
buildUrl(parsedUrl) {
var toStringify = parsedUrl.query;
var result = parsedUrl.pathname;
if (Object.keys(toStringify).length) {
result += '?' + querystring.stringify(toStringify);
var keys = Object.keys(toStringify).sort();
var list = new Array(keys.length);
for (var i = 0; i < keys.length; i++) {
var key = keys[i];
list[i] = `${key}=${toStringify[key]}`;
}
result += '?' + list.join('&');
}

@@ -141,4 +147,4 @@ return result;

var parsedUrl = parse(url, true);
var signToString = this.buildSignToString(method, headers, signedHeadersStr, parsedUrl);
headers['x-ca-signature'] = this.sign(signToString);
var stringToSign = this.buildStringToSign(method, headers, signedHeadersStr, parsedUrl);
headers['x-ca-signature'] = this.sign(stringToSign);
headers['user-agent'] = ua;

@@ -159,5 +165,14 @@

if (code !== 200) {
var message = response.headers['x-ca-error-message'];
var err = new Error(`${method} ${format(url)} failed width code(${code}).` +
` request id: ${response.headers['x-ca-request-id']},` +
` error message: ${response.headers['x-ca-error-message']}`);
` error message: ${message}`);
if (debug.enabled) {
debug('stringToSign:');
debug('client: %s', stringToSign.replace(/\n/g, '#'));
if (message.includes('Invalid Signature')) {
var serverStringToSign = message.replace('Invalid Signature, Server StringToSign:', '');
debug('server: %s', serverStringToSign);
}
}
throw err;

@@ -164,0 +179,0 @@ }

{
"name": "aliyun-api-gateway",
"version": "1.0.2",
"version": "1.0.3",
"description": "Aliyun API Gateway Node.js SDK",

@@ -15,2 +15,3 @@ "main": "index.js",

"dependencies": {
"debug": "^2.6.0",
"httpx": "^2.0.0",

@@ -17,0 +18,0 @@ "uuid": "^3.0.0"

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc