Botframework Bot框架V4上的语音服务认证问题
尝试从Azure语音服务获取令牌时出现以下错误。 “401(访问被拒绝)”。Botframework Bot框架V4上的语音服务认证问题,botframework,microsoft-speech-api,Botframework,Microsoft Speech Api,尝试从Azure语音服务获取令牌时出现以下错误。 “401(访问被拒绝)”。 以下是我通过JavaScript请求令牌的方式: const res=wait fetch('https://brazilsouth.api.cognitive.microsoft.com/sts/v1.0/issuetoken“,{方法:'POST',标题:{授权:'Bearer'+'MY_SPEECH_SERVICES_SUBSCRIPTION_KEY'}) const{authorizationToken}=wa
以下是我通过JavaScript请求令牌的方式:
const res=wait fetch('https://brazilsouth.api.cognitive.microsoft.com/sts/v1.0/issuetoken“,{方法:'POST',标题:{授权:'Bearer'+'MY_SPEECH_SERVICES_SUBSCRIPTION_KEY'})
const{authorizationToken}=wait res.json()
webSpeechPonyfillFactory=Wait window.WebChat.createCognitiveServicesSpeechServicesPonyfillFactory({authorizationToken,region})代码>
但是,如果我通过Windows PowerShell手动获取令牌,我的bot可以正常工作。
可能有什么问题?
Thx提前共享通过javascript获取令牌的方法。
“data”变量将存储令牌。
谢谢大家的支持
`<!DOCTYPE html>
<html>
<head>
<title>JSSample</title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(function() {
var params = {
// Request parameters
};
$.ajax({
url: "https://brazilsouth.api.cognitive.microsoft.com/sts/v1.0/issuetoken" + $.param(params),
beforeSend: function(xhrObj){
// Request headers
xhrObj.setRequestHeader("Ocp-Apim-Subscription-Key","MY_SPEECH_SERVICES_SUBSCRIPTION_KEY");
},
type: "POST",
// Request body
data: "{body}",
})
.done(function(data) {
alert(data);
})
.fail(function() {
alert("error");
});
});
</script>
</body>
</html>`
`
JSSample
$(函数(){
变量参数={
//请求参数
};
$.ajax({
url:“https://brazilsouth.api.cognitive.microsoft.com/sts/v1.0/issuetoken“+$.param(params),
发送前:函数(xhrObj){
//请求头
setRequestHeader(“Ocp Apim订阅密钥”、“我的语音服务订阅密钥”);
},
类型:“POST”,
//请求主体
数据:“{body}”,
})
.完成(功能(数据){
警报(数据);
})
.fail(函数(){
警报(“错误”);
});
});
`
您是在使用您的认知服务密钥还是您的机器人机密来颁发令牌?由于您正在尝试接收语音服务的令牌,但看起来您正在使用bot机密进行身份验证。谢谢Mick。对不起,我的问题陈述中有错。不,我正在使用语音服务密钥。您在获取sts令牌时是否正在获取401
?是。当我点击机器人麦克风时,会显示以下消息:“加载资源失败:服务器响应状态为401(拒绝访问)brazilsouth.api.cognitive.microsoft.com/sts/v1.0/issuetoken:1
我可以从Google开发者控制台(通过F12按键)看到。当我点击dev控制台链接时,我发现生成了以下错误:{“error”:{“code”:“404”,“message”:“Resource not found”}