Use URLSearchParams for application/x-www-form-urlencoded

This commit is contained in:
Frank Jogeleit 2022-11-01 10:01:33 +01:00
parent fd5cf60c69
commit 50750c1420
4 changed files with 27 additions and 3 deletions

12
dist/index.js vendored
View file

@ -2222,10 +2222,15 @@ module.exports.default = axios;
const axios = __webpack_require__(53);
const FormData = __webpack_require__(928)
const fs = __webpack_require__(747)
const url = __webpack_require__(835);
const METHOD_GET = 'GET'
const METHOD_POST = 'POST'
const HEADER_CONTENT_TYPE = 'Content-Type'
const CONTENT_TYPE_URLENCODED = 'application/x-www-form-urlencoded'
/**
* @param {Object} param0
* @param {string} param0.method HTTP Method
@ -2273,6 +2278,13 @@ const request = async({ method, instanceConfig, data, files, file, actions, igno
updateConfigForFile(instanceConfig, file, actions)
}
if (instanceConfig.headers[HEADER_CONTENT_TYPE] === CONTENT_TYPE_URLENCODED) {
let dataJson = convertToJSON(data)
if (typeof dataJson === 'object') {
data = (new url.URLSearchParams(dataJson)).toString();
}
}
const requestData = {
method,
data,

4
package-lock.json generated
View file

@ -1,12 +1,12 @@
{
"name": "http-request-action",
"version": "1.9.0",
"version": "1.11.2",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "http-request-action",
"version": "1.9.0",
"version": "1.11.2",
"license": "MIT",
"dependencies": {
"@zeit/ncc": "^0.22",

View file

@ -1,6 +1,6 @@
{
"name": "http-request-action",
"version": "1.9.0",
"version": "1.11.2",
"description": "",
"main": "src/index.js",
"private": false,

View file

@ -1,10 +1,15 @@
const axios = require('axios');
const FormData = require('form-data')
const fs = require('fs')
const url = require('url');
const METHOD_GET = 'GET'
const METHOD_POST = 'POST'
const HEADER_CONTENT_TYPE = 'Content-Type'
const CONTENT_TYPE_URLENCODED = 'application/x-www-form-urlencoded'
/**
* @param {Object} param0
* @param {string} param0.method HTTP Method
@ -52,6 +57,13 @@ const request = async({ method, instanceConfig, data, files, file, actions, igno
updateConfigForFile(instanceConfig, file, actions)
}
if (instanceConfig.headers[HEADER_CONTENT_TYPE] === CONTENT_TYPE_URLENCODED) {
let dataJson = convertToJSON(data)
if (typeof dataJson === 'object') {
data = (new url.URLSearchParams(dataJson)).toString();
}
}
const requestData = {
method,
data,