Headless CMS(strapi)

2023-10-08 16:12
文章标签 cms headless strapi

本文主要是介绍Headless CMS(strapi),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Headless CMS(strapi)

玩了玩微信小程序的cms,感觉还挺好的,不过目前处于公测阶段,后续应该还是要收费的,不过这个操作还挺好的。文档地址
不过其获取图片的时候默认用到的是小城云开发环境的链接样式,如果用在公开网站上的话,需要中间有一步换取临时链接的步骤。文档地址。
总体来说目前这个功能还是很好的,可以减少了很大的开发工作。

然后发现了个关键词,这个叫做 headless cms,嗯,那是不是也有类似开源的cms。然后发现了这个strapi。

操作界面基本上是一致的,纯js/ts开发的。使用上也是通过api访问的,感觉还是非常方便的。
下面介绍一下安装及简单使用。

参考文档

安装方法

使用一下命令部署,稍微等一下安装完成。

npx create-strapi-app my-project --quickstart

安装完之后会弹出来一个界面,随便填填进入到项目当中。
请添加图片描述

操作流程大体如下

大体上就是新建一个collection,然后添加字段并确认属性,添加完之后。

  1. 新建一个 Create new collection type
  2. 添加数据项
  3. 发布数据项
  4. 创建API token
  5. 请求数据

创建collection type

请添加图片描述

这个地方创建时用到的复数路径要记下来,后续的API路径使用的是这个ID

添加数据项

请添加图片描述

增加媒体资源

请添加图片描述

增加数据内容

请添加图片描述

发布数据

请添加图片描述

创建API token

请添加图片描述

在 setting -> global setting -> api tokens里边创建一个token,并且配置好token的权限范围

API请求

curl --location 'http://localhost:1337/api/xiaomubiaos?populate=*' \
--header 'Authorization: bearer 6aa3a69e3582eb9d12cab3db92cb1d70125d52b6813cfb2efbe5fe20db6d964bec0b4f656b5d741cc4d956d0704cd5e2740c4e1037585ff97f34da16bd1b0660aa8129838dc10aff683e66dcfbdcee42c28ffb5761a2c72aca6ed0e2562871f2c7f81be63e5c48c38952e86573fcf90d2d09340d7d5f7e65ba7ec4d860b7c8b2'

请求结果如下:

{"data":[{"id":1,"attributes":{"target":"1亿","createdAt":"2023-10-08T06:10:49.580Z","updatedAt":"2023-10-08T06:12:48.121Z","publishedAt":"2023-10-08T06:12:48.119Z","pic":{"data":{"id":1,"attributes":{"name":"今天也要开开心心哒.png","alternativeText":null,"caption":null,"width":672,"height":551,"formats":{"thumbnail":{"name":"thumbnail_今天也要开开心心哒.png","hash":"thumbnail__2331b2e1bd","ext":".png","mime":"image/png","path":null,"width":190,"height":156,"size":62.29,"url":"/uploads/thumbnail__2331b2e1bd.png"},"small":{"name":"small_今天也要开开心心哒.png","hash":"small__2331b2e1bd","ext":".png","mime":"image/png","path":null,"width":500,"height":410,"size":336,"url":"/uploads/small__2331b2e1bd.png"}},"hash":"_2331b2e1bd","ext":".png","mime":"image/png","size":120.31,"url":"/uploads/_2331b2e1bd.png","previewUrl":null,"provider":"local","provider_metadata":null,"createdAt":"2023-10-08T06:10:26.364Z","updatedAt":"2023-10-08T06:10:26.364Z"}}}}}],"meta":{"pagination":{"page":1,"pageSize":25,"pageCount":1,"total":1}}
}

其中 header 里边需要添加的头是 Authorization: bearer token

populate 这个需要加上以显示图片内容,要不然无法获取媒体内容,她这个还挺好的,图片还有多种尺寸的,太方便了。
更多的配置根据需要查看官方文档即可。文档地址

这篇关于Headless CMS(strapi)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/166483

相关文章

SEO之网站结构优化(十五-CMS系统)

初创企业搭建网站的朋友看1号文章;想学习云计算,怎么入门看2号文章谢谢支持: 1、我给不会敲代码又想搭建网站的人建议 2、“新手上云”能够为你开启探索云世界的第一步 博客:阿幸SEO~探索搜索排名之道 15、CMS系统 现在的网站绝大多数是通过CMS系统制作和管理的,SEO人员优化网站就会受限于CMS 系统本身的灵活性和功能。市面上有很多开源免费的CMS系统,如中文的dede(织梦)、

树莓派 4 使用 WiFi 从 SSD Headless 启动

树莓派 4 使用 WiFi 从 SSD Headless 启动 树莓派已经默认支持从 SSD 启动,可以根据官方提供的工具初始化树莓派系统并启动;尝试通过安装 Ubuntu Server,不使用网线、显示器、键盘等,从 SSD 直接启动 依赖 树莓派 4MacSSD 安装 Ubuntu Server 1. 安装 Raspberry Pi Imager Raspberry Pi Imag

爬虫 headless 访问 知道创宇 加速乐 CDN 网站

通过 requests.get 直接请求网站首页,返回 521 错误提示码,返回结果是js代码。这是采用加速乐反爬技术,在访问前先判断客户端的cookie是否正确,如果不正确,返回521状态码和一段js代码,并且进行set-cookie操作,返回的js代码经过浏览器执行又会生成新的cookie,这两个cookie一起发送给服务器,才会返回正确的网页内容 试了下代码demo如下,有cookie就带上

sickos 靶机渗透(wolf cms 渗透,squid 代理)

靶机信息 vulnhub靶机 主机发现 192.168.50.152 为靶机Ip ┌──(kali㉿kali)-[~/testSickos]└─$ sudo nmap -sn 192.168.50.0/24[sudo] password for kali: Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-30 09:56 C

垃圾收集器知识点总结-CMS

使用回收算法:标记清除 适用区域:老年代 回收过程: 1.初始化标记: 标记Root可达的对象。对于是否把年轻带作为root的这个问题,有不同答案,但是看到了代码里初始化标记的时候做了如下操作 初始化标记会执行到上述代码,然后第二个变量是true(可能对代码的理解有偏差) 2.并发标记: 标记新生代活的对象为Root;沿着Root标记存活的对象;在与程序运行期间,对象引用关系会变化,

【PyQt6 应用程序】CMS自动上稿12数据库综合版

在数字化时代,内容管理系统(CMS)的优化配置成为提高工作效率的关键步骤。CMS能够简化内容的创建、管理和发布过程,但对于初学者或是非技术人员来说,CMS的各项功能和操作可能显得复杂难懂。 使用本软件可以在配置好的数据中基于LM Studio进行批量文章撰写实现SEO。在原有单模板的基础之上增加了多站点管理,管理站点高达12个,实现了一套配置挂机无忧的工作环境。 单篇的操作效果可以参考文章:

【nextjs strapi】如何统一封装 fetch 请求

前端 nextjs 接入 strapi 作为后端 如何封装请求呢 我们使用的是浏览器的 fetch 不用安装任何库 封装 frontend/src/app/[lang]/utils/fetch-api.tsx import qs from "qs";import { getStrapiURL } from "./api-helpers";export async function

chromedriver headless 模式屏蔽日志

headless无头浏览器模式下有很多日志信息,如下, 将日志等级设定为 3 即可 chrome_options.add_argument('log-level=3')#info(default) = 0#warning = 1#LOG_ERROR = 2#LOG_FATAL = 3 DevTools listening on ws://127.0.0.1:55019/devtoo

使用 Headless Chrome 进行页面渲染

本文主要介绍了使用 Node.js 利用 Chrome Remote Protocol 远程控制 Headless Chrome 渲染界面的基础用法。 全文阅读:使用 Headless Chrome 进行页面渲染 了解更多前沿技术资讯,获取深度技术文章推荐,请关注CSDN研发频道微博。 欢迎加入“CSDN前端开发者”群,与更多专家、技术同行进行热点、难点技术交流。请扫描以下二维码

静态网站生成和部署(二)项目构成和部署(Strapi + Vercle)

项目介绍 使用 Gridsome 创建项目模板参考 startbootstrap-clean-blog使用 Strapi 管理内容,提供 API 和 GraphQL查询 Gridsome 是静态站点生成器,打包时可以通过 API 或 GraphQL 获取动态数据,生成对应的静态文件。 例如:获取一定数量的文章列表,生成每个文章的详情页。 Strapi 用于提供数据来源。 由于生成的是静态