我正在reactjs中使用openai gpt api构建一个网页。我将 api 密钥保存在 .env 文件中,然后 gitignored 它。我用 gh-pages 部署了我的代码,但 openai 检测到它并自动旋转密钥。如何正确使用api key?
const DEFAULT_PARAMS = {
model: "gpt-3.5-turbo",
messages: [{"role": "user",
"content": message
}],
temperature: 1,
max_tokens: 1000
};
const params_ = {...DEFAULT_PARAMS};
const result = await fetch('https://api.openai.com/v1/chat/completions', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + String(process.env.REACT_APP_OPENAI_API_KEY)
},
body: JSON.stringify(params_)
});
const data = await result.json()
这对我有用
首先,我使用 crypto-js 加密我的 API 密钥
const encryptText = (plainText: string): string => {
return CryptoJS.AES.encrypt(plainText, secretKey).toString();
};
得到结果后,我复制它,然后删除上面的代码
然后我在需要 api 密钥的文件上执行此操作
const decryptText = (encryptedText: string): string => {
const bytes = CryptoJS.AES.decrypt(encryptedText, "your password");
return bytes.toString(CryptoJS.enc.Utf8);
};
Authorization: `Bearer ${ decryptText(encryptedAPI)}`