一句话识别返回"Error": { "Code": "AuthFailure.SignatureFailure", "Message": "The provided credentials could not be validated. Please check your signature is correct." },
我的代码
now_time = time(NULL); sprintf(pbuf, "POST%s/?Action=%s&Data=%s&DataLen=%s&EngSerViceType=%s&Nonce=%d&ProjectId=%s&SecretId=%s&SourceType=%s&SubServiceType=%s&Timestamp=%d&UsrAudioKey=%s&Version=%s&VoiceFormat=%s", sour->GetBodyItem(0), //Host sour->GetBodyItem(3), //Action sour->GetBodyItem(4), //Data sour->GetBodyItem(5), //DataLen sour->GetBodyItem(6), //EngSerViceType 0, //Nonce sour->GetBodyItem(7), //ProjectId (char*)tools.UrlEncodex(sour->GetBodyItem(1)).c_str(), //SecretId sour->GetBodyItem(8), //SourceType sour->GetBodyItem(9), //SubServiceType now_time, //Timestamp sour->GetBodyItem(10), //UsrAudioKey sour->GetBodyItem(11), //Version sour->GetBodyItem(12)); //VoiceFormat len = hamcSha(E_SHA1, (unsigned char*)pbuf, strlen(pbuf), (unsigned char*)sour->GetBodyItem(2), strlen(sour->GetBodyItem(2)), signature_sha); codec.EncodeBase64((const unsigned char*)signature_sha, szSignature, len, 0);
不知这么拼串生产Signature是否有问题?
相似问题