Addons
Explora los addons integrados de Proxyman Scripting para Base64, hash MD5/SHA, UUID, decodificación de JWT, GZip y más, e impórtalos con require().
1. ¿Qué es?
Proxyman incluye addons integrados muy útiles para tareas comunes, como el hash MD5 y SHA1, la codificación y decodificación Base64, y el formateo de XML y JSON.
Desde Proxyman macOS 6.10.0 o posterior, puedes usar el comando nativo `npm install` para instalar tus librerías de terceros. Consulta use-npm-install.md.
2. Addons integrados
Puedes encontrar código de ejemplo de todos los addons en Addons Snippet Code
| Nombre | Descripción |
|---|---|
| Base64.js | Codificación y decodificación Base64. Admite las funciones nativas atob/btoa |
| CamelCase.js | Convierte texto a camelCase |
| CryptoJS.js | Algoritmos de cifrado y descifrado DES, AES y Rabbit. Un pequeño wrapper de CryptoJS |
| DateToTimestamp.js | Convierte una fecha en formato texto a timestamp |
| DateToUTC.js | Convierte una fecha en formato texto a una cadena UTC |
| DecodeURI.js | Decodifica una cadena con codificación porcentual |
| EncodeURI.js | Codifica una cadena con codificación porcentual |
| FormatCSS.js | Da formato a una cadena CSS |
| FormatJSON.js | Da formato a una cadena JSON |
| BeautifyJSON.js | Convierte un objeto JSON en una cadena JSON con formato |
| UglifyJSON.js | Convierte un objeto JSON en una cadena JSON compacta |
| FormatXML.js | Da formato a una cadena XML |
| HelloWorld.js | Hola mundo |
| Hex2rgb.js | Convierte una cadena #000000 a una cadena RGB |
| JsonToQuery.js | Convierte un objeto JSON en una cadena de consulta |
| JSONValidator.js | Valida una cadena JSON |
| JWTDecode.js | Decodifica un token JWT |
| KebabCase.js | Convierte a kebab-case |
| MD5.js | Calcula el hash MD5 |
| MinifyCSS.js | Minifica una cadena CSS |
| MinifyJSON.js | Minifica una cadena JSON |
| MinifyXML.js | Minifica una cadena XML |
| QueryToJson.js | Convierte una cadena de consulta en un objeto JSON |
| Pako.js | Comprime y descomprime con Deflate/Inflate y GZip/UnGZip |
| SHA1.js | Calcula el hash SHA1 |
| SHA256.js | Calcula el hash SHA256 |
| SHA512.js | Calcula el hash SHA512 |
| SnakeCase.js | Convierte a snake_case |
| StartCase.js | Convierte a Start Case |
| UUID.js | Genera una cadena UUID-v4 única |
3. ¿Cómo usar los addons?
Cada addon exporta funciones que puedes importar con la función require.
Por ejemplo, el addon Base64.js tiene este aspecto:
// Base64.js
const Base64 = require('@libs/base64.js');
const { atob } = require("@libs/atob.js");
const { btoa } = require("@libs/btoa.js");
// atob / btoa
// They're equivalent with window.atob and window.btoa
exports.atob = atob;
exports.btoa = btoa;
// Basic Base64
exports.base64Decode = (input) => {
return Base64.decode(input)
};
exports.base64Encode = (input) => {
return Base64.encode(input);
};
Después, puedes usarlo en el script:
const { atob, btoa } = require("@addons/Base64.js")
function onRequest(context, url, request) {
// Encode base64 by using the export function
var text = btoa("Hello World");
console.log(text)
// => SGVsbG8gV29ybGQ=
}
Puedes encontrar el código de todos los addons en ~/Library/Application\ Support/com.proxyman.NSProxy/addons
4. Notas
La función require no es una función integrada del framework JavascriptCore, sino una función personalizada que proporciona Proxyman para que puedas importar addons y librerías fácilmente.
Gracias a Ivan Mathy por crear la app Boop, que inspiró los addons integrados de Proxyman.
La carpeta de addons se sobrescribe con cada actualización de Proxyman, así que no edites los addons ahí. Para modificar un addon, primero cópialo a la carpeta users. Consulta Escribir tus propios addons.