You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复Kotlin Retrofit调用谷歌翻译API的‘缺少有效API密钥’错误?

修复Retrofit调用RapidAPI谷歌翻译时的403权限错误

下面是针对你遇到的"缺少有效API密钥"403错误的具体修复指南:

1. 修正请求参数传递方式

RapidAPI提供的谷歌翻译v2接口要求POST请求的参数通过表单字段传递,而非URL查询参数。你当前用@Query会把参数拼在URL里,不符合接口要求,这可能导致API服务无法正确识别请求,进而误判为缺少密钥。

修改接口代码,改用@FormUrlEncoded和@Field:

interface GoogleTranslationApi {

    @FormUrlEncoded
    @POST("language/translate/v2")
    @Headers(
        "Accept-Encoding: application/gzip",
        "X-RapidAPI-Host: google-translate1.p.rapidapi.com"
    )
    suspend fun getTranslate(
        @Header("X-RapidAPI-Key") apiKey: String,
        @Field("q") q: String,
        @Field("target") target: String,
        @Field("source") source: String
    ): Response<TranslationResponse>
}

同时建议创建数据类接收响应,避免直接用Response<String>难以解析:

data class TranslationResponse(
    val data: Data
)

data class Data(
    val translations: List<Translation>
)

data class Translation(
    val translatedText: String
)

2. 改用动态Header传递API密钥

静态@Headers里硬编码密钥可能存在格式问题(比如空格、隐藏字符),改用动态@Header可以确保密钥被正确传递。调用接口时传入你的密钥:

val apiKey = "c07540b849msh5f1b436e04531f9p167645jsn27e8********"
val response = googleTranslationApi.getTranslate(apiKey, "Hello", "zh", "en")

3. 检查Retrofit实例配置

确保你的Retrofit实例添加了合适的转换器(比如GsonConverter),否则可能导致请求/响应解析异常,间接引发权限错误:

val retrofit = Retrofit.Builder()
    .baseUrl("https://google-translate1.p.rapidapi.com/")
    .addConverterFactory(GsonConverterFactory.create())
    .build()

val googleTranslationApi = retrofit.create(GoogleTranslationApi::class.java)

4. 验证API密钥有效性

用Postman或curl直接调用接口,排除Retrofit代码问题:

curl -X POST "https://google-translate1.p.rapidapi.com/language/translate/v2" \
-H "X-RapidAPI-Key: 你的完整密钥" \
-H "X-RapidAPI-Host: google-translate1.p.rapidapi.com" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "q=Hello&target=zh&source=en"

如果这个请求成功,说明问题出在Retrofit代码配置上;如果同样报错,联系RapidAPI客服确认密钥权限或接口状态。

内容的提问来源于stack exchange,提问作者HaBuiDuc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 02:54:55