Por ejemplo: ¿El caso de la extensión de API en la plataforma actual es PY y GO, donde el párrafo sobre la firma, describe: primero MD5 encriptado y luego codificado UTF-8, veo que PY es introducido directamente en la biblioteca, pero JS no tiene funciones codificadas en UTF-8? Por lo tanto, la firma siempre está equivocada, ni tampoco sé si es una error de codificación o si la propia escritura tiene un problema, el pequeño programador pide a Dios que lo ayude a indicarlo, ¡gracias de rodillas!
El método y la clave de acceso tienen un valor asignado.
var d = {
version: '1.0',
access_key: accessKey,
method: method,
args: [],
nonce: _N(UnixNano() / 1000000, 0),
}
var m = d.version + "|" + d.method + "|" + d.args + "|" + d.nonce + "|" + secretKey
d.sign = HMAC("md5", "hex", m, "pass")
var h = JSON.parse(HttpQuery("https://www.fmz.cn/api/v1?access_key="+accessKey+"&nonce="+d.nonce+"&args=[]&sign="+d.sign+"&version=1.0&method="+d.method))
写了一个,测试可以访问通了,您参考下:
function main() {
var accessKey = ""
var secretKey = ""
var method = "GetNodeList"
var d = {
version: '1.0',
access_key: accessKey,
method: method,
args: "null",
nonce: (new Date().getTime()).toString()
}
var m = d.version + "|" + d.method + "|" + d.args + "|" + d.nonce + "|" + secretKey
d.sign = Hash("md5", "hex", m)
var ret = HttpQuery("https://www.fmz.com/api/v1?access_key=" + accessKey + "&nonce=" + d.nonce + "&args=null&sign=" + d.sign + "&version=1.0&method=" + d.method)
Log(ret)
}
accessKey , secretKey 填写自己的KEY 就可以了。
- 1
