gpt4 book ai didi

c++ - 谷歌上的 Qt http 错误请求

转载 作者:行者123 更新时间:2023-11-30 04:16:17 25 4
gpt4 key购买 nike

我正在尝试使用谷歌的 url shortener api ( https://developers.google.com/url-shortener/v1/getting_started#shorten ) 创建一个 url shortener 应用程序。问题是我收到一个错误的请求。这是错误:错误:下载错误https://www.googleapis.com/urlshortener/v1/url - 服务器回复:错误请求

我做错了什么?这是代码:

void MainWindow::ppp(QString longurl)
{
QNetworkAccessManager* manager = new QNetworkAccessManager(this);
connect(manager, SIGNAL(finished(QNetworkReply *)), this, SLOT(replyFinished(QNetworkReply *)));

QUrl url = QUrl("https://www.googleapis.com/urlshortener/v1/url");

QNetworkRequest request(url);
request.setHeader(request.ContentTypeHeader,"application/json");

QByteArray postData;
postData.append("longUrl");
postData.append(longurl);


manager->post(request,postData);
}

void MainWindow::replyFinished(QNetworkReply *reply)
{
if(reply->error() != QNetworkReply::NoError)
{
ui->textBrowser->setText("Error: " + reply->errorString());
}
else
{
QByteArray responseData = reply->readAll();
QString qstr(responseData);
ui->textBrowser->setText(qstr);
}
}

最佳答案

您必须以 json 格式发送您的帖子数据。

要使您的代码正常工作,请替换

QByteArray postData;
postData.append("longUrl");
postData.append(longurl);

有了这个

QByteArray postData;
postData.append("{\"longUrl\": \""+longurl+"\"}");

关于c++ - 谷歌上的 Qt http 错误请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17828606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com