``` ## EdgoOne边缘函数部署项目前后端 购买EdgeOne套餐,购买链接:[https://buy.cloud.tencent.com/edgeone](https://buy.cloud.tencent.com/edgeone?from=20421&from_column=20421) ![EdgeOne购买页](https://www.9kr.cc/usr/uploads/2023/07/4069068437.png) 进入EdgoOne控制台添加:[https://console.cloud.tencent.com/edgeone/zones/](https://console.cloud.tencent.com/edgeone/zones/?from=20421&from_column=20421) 注意点只有一个:绑定套餐时选择绑定已购套餐,即可看到刚才购买的套餐 ![添加站点](https://www.9kr.cc/usr/uploads/2023/07/3098388857.png) 添加站点后选择域名服务à域名管理à添加域名,添加两个域名 1. ai.xxxx.com --- 用来放前端 2. api.xxx.com --- 用来放后端 ps.其实添加一个域名,然后根据path区分前后端分别处理信息也可以,但是不方便管理。 ![添加域名](https://www.9kr.cc/usr/uploads/2023/07/2463688812.png) 点击边缘函数à函数管理à添加函数,分别添加两个函数 ![新建函数](https://www.9kr.cc/usr/uploads/2023/07/3139820975.png) 函数一,用于展示前端页面,也就是前面的ai.xxx.com 进入 函数添加页面 ![新建函数](https://www.9kr.cc/usr/uploads/2023/07/3347911315.png) 函数代码如下: 将前面的前端代码中的api网址由” [https://api.9kr.cc/qcloud/text2img](https://api.9kr.cc/qcloud/text2img)”替换成https://api.xxx.com,然后放入下面的代码中,再复制到上图的函数代码框即可 ``` const html = ` 这里填入刚才上面展示的前端代码 `; async function handleRequest(request) { return new Response(html, { headers: { 'content-type': 'text/html; charset=UTF-8', 'x-edgefunctions-test': 'Welcome to use Edge Functions.', }, }); } addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)); }); ``` 点击 创建并部署 后,点击新增触发规则 ![部署成功](https://www.9kr.cc/usr/uploads/2023/07/2101603347.png) 在弹出的窗口中,选择HOSTà等于àai.xxx.com,再点击确定 ![新增触发规则](https://www.9kr.cc/usr/uploads/2023/07/789206670.png) 函数二,用于处理前端绘图请求并返回绘图结果,也就是前面的api.xxx.com 像函数一那样再新建一个函数,然后将第四步修改API密钥和访问密钥后的代码复制上去,最后将触发规则的HOST设置成”api.xxx.com”即可。 ## 效果展示 完成上述操作后打开ai.9kr.cc,可以看到如下界面: ![网页效果](https://www.9kr.cc/usr/uploads/2023/07/3664724854.png) 输入文本描述,以及上面设置的访问密钥,点击生成: ![绘画结果](https://www.9kr.cc/usr/uploads/2023/07/2125546965.png) ## 后记 至此AI绘图站搭建完成。 除了AI绘图,腾讯云还有不少AI产品提供免费试用,后面应该会把这一系列产品做完。 如下为免费试用产品列表, 感兴趣的可以点击这个链接了解:[https://cloud.tencent.com/act/free?from=20893](https://cloud.tencent.com/act/free?from=20893) ![免费试用活动](https://www.9kr.cc/usr/uploads/2023/07/2922324818.png)