当前位置: 首页 > wzjs >正文

温岭 网站建设win7dw做asp购物网站

温岭 网站建设,win7dw做asp购物网站,深圳网络推广服务是什么,网站收录提交入口怎么做1.获取api (有免费10元额度) DeepSeek 记得复制api,避免丢失频繁创建。 2.qt调用https请求 配置网络模块 QT core gui widgets network 直接上代码 拿到代码替换api,和修正qt组件输入和输出即可。 #ifndef DEEPSEEKCLIENT…

1.获取api (有免费10元额度)

DeepSeek

记得复制api,避免丢失频繁创建。

2.qt调用https请求

配置网络模块

QT += core gui widgets network

直接上代码

拿到代码替换api,和修正qt组件输入和输出即可。

#ifndef DEEPSEEKCLIENT_H
#define DEEPSEEKCLIENT_H#include <QWidget>
#include <QNetworkAccessManager>
#include <QNetworkRequest>
#include <QNetworkReply>
#include <QJsonDocument>
#include <QJsonObject>
#include<QJsonArray>
#include <QSslSocket>namespace Ui {
class DeepSeekClient;
}class DeepSeekClient : public QWidget
{Q_OBJECTpublic:explicit DeepSeekClient(QWidget *parent = nullptr);~DeepSeekClient();void sendRequest(const QString &prompt);void handleResponse(QNetworkReply *reply);signals:void responseReceived(const QString &response);private slots:void on_pushButton_clicked();private:QNetworkAccessManager *manager;QString api_key = "sk-xxxx"; // 替换为你的API Key
private:Ui::DeepSeekClient *ui;
};#endif // DEEPSEEKCLIENT_H
#include "deepseekclient.h"
#include "ui_deepseekclient.h"
#include <QDebug>
#include"log/easylogging++.h"DeepSeekClient::DeepSeekClient(QWidget *parent) :QWidget(parent),ui(new Ui::DeepSeekClient)
{ui->setupUi(this);manager = new QNetworkAccessManager(this);// 设置样式表QString styleSheet = R"(QWidget {background-color: #f5f5f5;font-family: "Microsoft YaHei", Arial;}QTextEdit {background-color: white;border: 1px solid #ddd;border-radius: 8px;padding: 8px;font-size: 14px;}QLineEdit {background-color: white;border: 1px solid #ddd;border-radius: 8px;padding: 4px 12px;font-size: 14px;}QLineEdit:focus {border: 1px solid #4a90e2;}QPushButton {background-color: #4a90e2;color: white;border: none;border-radius: 8px;font-size: 14px;font-weight: bold;}QPushButton:hover {background-color: #357abd;}QPushButton:pressed {background-color: #2a5f96;})";this->setStyleSheet(styleSheet);// 检查SSL支持qDebug() << "SSL Support:" << QSslSocket::supportsSsl();qDebug() << "Build Version:" << QSslSocket::sslLibraryBuildVersionString();qDebug() << "Runtime Version:" << QSslSocket::sslLibraryVersionString();qDebug() << manager->supportedSchemes();
}DeepSeekClient::~DeepSeekClient()
{delete ui;
}///
/// dpseek发送数据
/// \param prompt
///
void DeepSeekClient::sendRequest(const QString &prompt) {// 显示思考状态QString userInput = ui->dpseek_input_edit->text();ui->dpseek_output_edit->append(QString("<div style='margin: 8px 0;'><b style='color: #4a90e2;'>您:</b> %1</div>").arg(userInput));ui->dpseek_output_edit->append(QString("<div style='margin: 8px 0; color: #666;'><i>AI正在思考中,请稍候...</i></div>"));// 禁用输入和发送按钮ui->dpseek_input_edit->setEnabled(false);ui->pushButton->setEnabled(false);QUrl url("https://api.deepseek.com/chat/completions");QNetworkRequest request(url);request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");request.setRawHeader("Authorization", ("Bearer " + api_key).toUtf8());QJsonObject body;body["model"] = "deepseek-chat";body["messages"] = QJsonArray{QJsonObject{{"role", "user"}, {"content", prompt}}};QNetworkReply *reply = manager->post(request, QJsonDocument(body).toJson());// 处理SSL错误connect(reply, &QNetworkReply::sslErrors, this, [reply]() {qDebug() << "SSL Errors occurred!";reply->ignoreSslErrors(); // 测试阶段忽略错误});connect(reply, &QNetworkReply::finished, [=]() {handleResponse(reply);reply->deleteLater();});
}
///
/// 接收数据,回调处理
/// \param reply
///
void  DeepSeekClient::handleResponse(QNetworkReply *reply) {// 重新启用输入和发送按钮ui->dpseek_input_edit->setEnabled(true);ui->pushButton->setEnabled(true);if (reply->error() == QNetworkReply::NoError) {QByteArray response = reply->readAll();QJsonDocument doc = QJsonDocument::fromJson(response);QJsonObject json = doc.object();if (json.contains("choices")) {QString result = json["choices"].toArray()[0].toObject()["message"].toObject()["content"].toString();// 删除"正在思考"的提示QTextCursor cursor = ui->dpseek_output_edit->textCursor();cursor.movePosition(QTextCursor::End);cursor.movePosition(QTextCursor::PreviousBlock, QTextCursor::KeepAnchor);cursor.removeSelectedText();cursor.deletePreviousChar(); // 删除多余的换行// 显示AI回复ui->dpseek_output_edit->append(QString("<div style='margin: 8px 0; background-color: #f8f9fa; padding: 8px; border-radius: 4px;'><b style='color: #28a745;'>AI:</b> %1</div>").arg(result));// 清空输入框ui->dpseek_input_edit->clear();emit responseReceived(result);}} else {// 删除"正在思考"的提示QTextCursor cursor = ui->dpseek_output_edit->textCursor();cursor.movePosition(QTextCursor::End);cursor.movePosition(QTextCursor::PreviousBlock, QTextCursor::KeepAnchor);cursor.removeSelectedText();cursor.deletePreviousChar(); // 删除多余的换行QString errorMessage = QString("<div style='color: #dc3545; margin: 8px 0;'><b>错误:</b> %1</div>").arg(reply->errorString());ui->dpseek_output_edit->append(errorMessage);}
}
void DeepSeekClient::on_pushButton_clicked()
{LOG(INFO)<<"INPUT: "<<ui->dpseek_input_edit->text().toStdString();sendRequest(ui->dpseek_input_edit->text());
}

3.测试

把qt的界面组件输入输出替换即可

坑点!!

ssl1.1.1g报错处理,主要就是openssl版本兼容性问题导致,必须使用一致的dll版本。导致ssl不支持

官网还找不到了openssl 1.1.1g的安装包。

这里我提供安装包

通过网盘分享的文件:OpenSSL 1.1.1g-所需dll动态库文件.zip
链接: https://pan.baidu.com/s/16m5mmyd6J2LTeIIwRdDp1w 提取码: u3s7 
--来自百度网盘超级会员v6的分享

把dll文件放到目录的build后面即可 

学习资料分享

0voice · GitHub

http://www.dtcms.com/wzjs/833666.html

相关文章:

  • 网站建设到上线步骤电脑浏览器打不开网页
  • 广州金将令做网站怎么样网站如何做水晶按钮
  • html做校园网站电脑字体wordpress
  • 直接打域名访问网站龙港做网站店铺
  • 网站如何做水晶按钮网站收录做关键词排名
  • 注册公司网站的费用网站空间价格
  • 可以免费做3dLOGO的网站凡客v网上商城
  • 山西手动网站建设推荐平台大连高新园区行政服务大厅电话
  • 版面设计网站俄罗斯的最新军事新闻
  • 视频直播网站哪里找人做网站
  • 怎么用电脑给域名做网站郑州建站价格
  • 开发网站的软件上海传媒公司总裁结婚
  • 炫酷的个人网站小程序源码多少钱
  • 莱芜百度网站建设网站建设监理
  • 网站建设找单wordpress 太原
  • 泰州网站开发公司简述网站规划的任务
  • 免费无广告建站北京综评网址
  • 哪里有网站建设的企业网站如何做淘宝推广
  • 推广计划怎么做推广是什么seo排名的公司
  • 网站与与云的关系常州网站关键字优化
  • 门户网站系统有哪些平台为什么现在好多人嘲讽做核酸
  • 网站怎么做vga头偃师做网站
  • 圣诞节网站模板wordpress支持什么语言包
  • 百度网站排名怎么做上海天华室内设计有限公司
  • 乐都区wap网站建设公司庆阳市建设局门户网站
  • 流行网站开发框架邯郸信息港招聘信息
  • 无锡新区规划建设环保局网站网站右边上下浮动代码
  • 如何给喜欢的明星做网站0元做网站
  • 怎样做才能让网站有排名苍溪县代码是多少
  • 注册网站域名需要什么汉中专业网站建设