科大讯飞在线语音播报vue模块

本文详细描述了如何通过JavaScript利用WebSocket与TTS服务进行安全通信,涉及加密技术和音频数据处理过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<template>

  <div class="home">

      <!-- <button @click="getWebsocketUrl">获取WSS地址</button> -->

      <!-- <button @click="connectWebSocket">连接WSS地址</button>

       <button @click="audioPlay">播放</button> -->

  </div>

</template>

<script>

// @ is an alias to /src

import CryptoJS from 'crypto-js'

import {Base64} from "js-base64";


 

export default {

name: 'Home',

data() {

  return {

    webSocketUrl: '',

    ttsWS: null,

    audioContent: null,

    audioDataOffset: 0,

    transWorker: null,

    audioData: [],

   

  }

},

created(){

  this.getWebsocketUrl()

},

methods: {

  getWebsocketUrl() {

    return new Promise((resolve, reject) => {

      var apiKey = "自己的key"

      var apiSecret = "自己的api"

      var url = 'wss://tts-api.xfyun.cn/v2/tts'

      var host = location.host

      var date = new Date().toGMTString()

      var algorithm = 'hmac-sha256'

      var headers = 'host date request-line'

      var signatureOrigin = `host: ${host}\ndate: ${date}\nGET /v2/tts HTTP/1.1`

      var signatureSha = CryptoJS.HmacSHA256(signatureOrigin, apiSecret)

      var signature = CryptoJS.enc.Base64.stringify(signatureSha)

      var authorizationOrigin = `api_key="${apiKey}", algorithm="${algorithm}", headers="${headers}", signature="${signature}"`

      var authorization = btoa(authorizationOrigin)

      url = `${url}?authorization=${auth

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值