如何在 Indy TidHTTP 中使用 DeepL API curl 命令?
How to use DeepL API curl command with Indy TidHTTP?
对 https://www.deepl.com 的示例请求:
curl https://api-free.deepl.com/v2/translate \
-d auth_key=[yourAuthKey] \
-d "text=Hello world!" \
-d "target_lang=DE"
示例响应:
{"translations": [{
"detected_source_language":"EN",
"text":"Hallo Welt!"
}]
}
我想使用 Indy 的 TIdHTTP
组件在 Delphi 11 中实现上述示例,但我无法将现有答案转化为对我来说可行的解决方案。
该 curl 示例的 TIdHTTP
等效项是将包含 name=value
对的 TStrings
对象传递给 TIdHTTP.Post()
方法,例如:
PostData := TStringList.Create;
try
PostData.Add('auth_key=[yourAuthKey]');
PostData.Add('text=Hello, world!');
PostData.Add('target_lang=DE');
Response := IdHTTP.Post('https://api-free.deepl.com/v2/translate', PostData);
finally
PostData.Free;
end;
对 https://www.deepl.com 的示例请求:
curl https://api-free.deepl.com/v2/translate \
-d auth_key=[yourAuthKey] \
-d "text=Hello world!" \
-d "target_lang=DE"
示例响应:
{"translations": [{
"detected_source_language":"EN",
"text":"Hallo Welt!"
}]
}
我想使用 Indy 的 TIdHTTP
组件在 Delphi 11 中实现上述示例,但我无法将现有答案转化为对我来说可行的解决方案。
该 curl 示例的 TIdHTTP
等效项是将包含 name=value
对的 TStrings
对象传递给 TIdHTTP.Post()
方法,例如:
PostData := TStringList.Create;
try
PostData.Add('auth_key=[yourAuthKey]');
PostData.Add('text=Hello, world!');
PostData.Add('target_lang=DE');
Response := IdHTTP.Post('https://api-free.deepl.com/v2/translate', PostData);
finally
PostData.Free;
end;