Open superAlibi opened 5 months ago
我们只支持 nodejs 的官方 api,类似 bun 这种兼容 nodejs api 的运行时应该是可以运行的。
实际上并不能,在使用sdk发送curl请求时,会将密钥对内容进行签名,但实际上密钥是base64的,在签名时使用node:crypto模块对密钥显式解码时,爆出私钥的base64无法解码 以下是逻辑代码和测试文件内容 `deno.json { ... "imports": { "alipaysdk": "npm:alipay-sdk@latest" } ... }
javascript
// projectroot/tools/sdk/alipay.ts
import { AlipaySdk } from "alipaysdk";
const urlObj = new URL(import.meta.url); const query = Object.fromEntries(urlObj.searchParams.entries());
/**
javascript
// projectroot/test/alipay.test.ts
import { getAlipaySDKInstane } from "../tools/sdk/alipay.ts?test";
Deno.test("test alipay sdk", async (t) => { const alipay = getAlipaySDKInstane(); await t.step("test query", async (t) => { const result = await alipay.curl("POST", "alipay.trade.page.pay", { body: { bizContent: { outTradeNo: "123456", productCode: "FAST_INSTANT_TRADE_PAY", totalAmount: "0.01", }, }, }); console.log(result); }); });
`
deno 不支持 nodejs api,是不支持的。
目前打算在denojs上做demo,看了下加密方式在denojs上不能原生支持.所以想问问未来有支持denojs的计划吗