[halo-dev/halo]2.x版本目前还没有除了主题使用的Finder API之外的接口吗

2024-04-12 1 views
3
你当前使用的版本

2.3.0

描述一下此特性

目前还是只有Finder API 啊。比如开发单页面应用,或者用Nuxt.js,Next.js。这还是需要接口的。

在2.x之前是有提供的 https://api.halo.run/,现在没找到相关的接口。

希望后续还会继续提供这样的接口

回答

1

:tada:这里提供了一个demo,可以简单的使用这些接口,不知道这样是否完全可行?。 这种情况可能不适用于客户端请求的情况。demo 使用的 Next.js,在服务端请求。

补充一下,第一次用这个 codesandbox,怎么感觉有点慢,和本地运行不是一个速度?

1

@AeroWang 简单看了一下,我感觉这样有点繁琐,目前你可以考虑使用 Basic Auth 的方式来鉴权,比如:

Axios:

const axiosInstance = axios.create({
  baseURL: "http://localhost:8090",
  withCredentials: true,
  auth: {
    username: 'admin',
    password: 'halo2048',
  },
})

Fetch:

fetch(url, {
  method:'GET', 
  headers: {
    'Authorization': 'Basic ' + base64.encode(username + ":" + password) 
  } 
}).then()

需要注意这不能在 client 中进行请求,可能会导致鉴权信息泄露。此外,这也仅仅是目前在 server 端最合适的方式,最终还是期望可以实现 Personal Access Token 来实现接口鉴权。

2

@JohnNiang 2.x现在可以用这样的鉴权方式啊,如果可以这样,那我上面那个例子确实繁琐了?

9

可以,但后面可能默认会关闭这种方式。

3

@ruibaby ??。接口返回的字段结构短时间内会有大变动吗?

4

不会,整个 2.x 可能都不会有大的变动。

3

阔以