Category

新闻

新闻

GraphQL 与 REST API 的异同?

GraphQL 与传统 REST API 有以下异同点:

相同点:

  1. 它们都是用于构建应用程序的 API。
  2. 它们都可以使用 HTTP 协议进行通信。
  3. 它们都可以使用 JSON 格式进行数据传输。

不同点:

  1. 数据获取方式:REST API 具有固定的端点,每个端点可以获取特定的数据;而 GraphQL 具有一个端点,客户端可以指定所需的数据,并在一次请求中获取多个资源。
  2. 数据结构:REST API 的数据结构通常是在服务器端定义,客户端需要按照服务器端提供的接口进行操作。而 GraphQL 的数据结构是由客户端定义的,客户端可以声明哪些数据和字段在查询中返回。
  3. 网络开销:REST API 往往存在网络开销问题,因为获取的数据量可能比客户端需要的数据量要大得多,而 GraphQL 使用一个请求来获取所有必需的数据,因此可以减少网络请求数量和相关开销。
  4. 版本管理:REST API 在不断发展中,每个 API 都有自己的不同版本。由于每个版本具有特定的服务端限制,客户端必须更新其应用程序以适配新版本。GraphQL 在这方面相对更加灵活,因为客户端可以控制数据结构和数据获取方式。

综上所述,GraphQL 和 REST API 都有其优点和缺点,应该根据具体情况选择使用。

新闻

AIGC – Image to Video

這個影片使用了特殊技術,可以讓電腦製作出一個看起來很像真人的影片,而且聲音也很像人類。這樣可以讓我們更生動地看到和聽到訊息,但也有可能會有一些風險,例如假的聲音和騙人的訊息。我們需要學習如何辨別真假,並且小心保護自己的資訊。

你干嘛瞪着眼睛看着我
你不要喜欢我呀
你不要以为我不知道
你在想什么
虽然我平易近人天生丽质
但是山鸡哪能配凤凰呢
你想 你想也有罪
想也没有用

新闻

How to Fix SSH Not Working on MacOS Ventura

Open the Terminal (via Spotlight or through the Utilities folder) and enter the following command string:

sudo nano /etc/ssh/ssh_config

You’ll need to authenticate with the admin password.

Scroll all the way to the bottom of the ssh_config file and then add the following lines to the bottom of ssh_config:

HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa

Hit Control+O to save, and Control+X to exit.

Try using SSH to connect to a server with RSA keys again, it should work as intended.

新闻

Openwrt 将 Overlay 指向外部存储

进行扩容之前,需要确保安装以下 ipk

  1. opkg update
  2. # block-mount 为 openwrt 的挂载点应用,安装后需重启才可显示
  3. # kmod-usb-storage USB 存储支持
  4. # kmod-fs-ext4 ext4 文件系统
  5. # e2fsprogs ext 文件系统工具
  6. # fdisk 磁盘分区格式化工具
  7. # cfdisk 同上
  8. opkg install block-mount kmod-usb-storage kmod-fs-ext4 e2fsprogs fdisk cfdisk

操作步骤

1、先找到我们外部存储设备

# 使用 fdisk 工具
fdisk -l

# 返回结果
# Disk /dev/mmcblk0: 28.99 GiB, 31104958464 bytes, 60751872 sectors
# Units: sectors of 1 * 512 = 512 bytes
# Sector size (logical/physical): 512 bytes / 512 bytes
# I/O size (minimum/optimal): 512 bytes / 512 bytes
# Disklabel type: dos
# Disk identifier: 0x4020f983

# Device Boot Start End Sectors Size Id Type
# /dev/mmcblk0p1 2048 60751871 60749824 29G 83 Linux

# /dev/mmcblk0 为外部存储设备,/dev/mmcblk0p1 则代表该设备的第一个分区

 

2、格式化当前整个磁盘 数据将全部清空

# 注意:这里格式化的是整个磁盘 mmcblk0,而非 p1 分区
mkfs.ext4 /dev/mmcblk0

# 如果格式化失败可能是因为当前设备已经被挂载
# 需先将设备卸载
umount /dev/mmcblk0

 

3、进行磁盘分区

cfdisk /dev/mmcblk0

# 由于我们格式化的是整个磁盘,此时 cfdisk 会提示我们按 Enter 继续

# 分区表选择 dos

# 创建分区的步骤如下
# New(新建分区) –> 设置分区大小 –> Write(写入配置) –> Quit(退出)

# 最后再将创建的分区格式化为 ext4 格式
mkfs.ext4 /dev/mmcblk0p1

4、重启路由器,挂载格式化后的分区

5、将现有 Over­lay 中的文件拷贝到该分区中

# Copy 的目的主要是为了保留你当前对系统所做的更改
# 如果不进行 Copy。 Openwrt 会将系统的默认配置 Copy 到 Overlay 中
# 如果要将全新安装的 Openwrt 系统进行扩容,那么你也可以不进行这一步

cp -r /overlay/* /mnt/mmcblk0p1

6、将该分区作为 overlay 使用

7、重启路由器即可大功告成

新闻

Edusoho迁移后,课程管理上传附件的错误修复

错误描述

修复过程,两种均可:

1、更新 UploadFileServiceImpl.php 文件,路径如下:

edusoho/src/Topxia/Service/File/Impl/UploadFileServiceImpl.php

2、更新 UploadFileServiceImpl.php 文件,注释掉两行代码:

164行://if($setting[‘upload_mode’] == ‘cloud’) $setting[‘upload_mode’]=’local’;

205行://if($setting[‘upload_mode’] == ‘cloud’) $setting[‘upload_mode’]=’local’;

 

更新文件:

edusoho课程附件bug更新

 

最后发现:没有安装PHP扩展fileinfo!

新闻

云服务器 ECS Linux 下使用 NTFS 文件系统示例

NTFS 为 Windows 操作系统下常用的文件系统。在使用云服务器 ECS Linux 系统时可能会需要读取 NTFS 文件系统中的数据。本文介绍部分使用示例。

ECS 服务器 Windows 系统更换为 Linux 系统后,比如更换为 Centos,对于 NTFS 格式的数据盘默认是无法识别的,可以通过 ntfs-3g 进行识别。

1. 执行如下命令安装 ntfs-3g:

yum install -y ntfs-3g

2. 查看系统磁盘信息:

fdisk -l

 

找到移动硬盘对应盘符,如:vdb

再执行:parted /dev/vdb print

显示如下:

 

可以知道sdb2(135M to 6001G)为基本数据分区,格式为NTFS

下一步,挂载到指定目录即可:sudo mount –t ntfs-3g /dev/vdb2 /mnt/windows

3. 为保证开机能自动挂载,在 /etc/fstab 里面添加如下配置:

读写方式挂载:

/dev/vdb5 /mnt/windows ntfs-3g defaults 0 0

说明: Ubuntu 系统已经自带了ntfs-3g 模块,可以直接参阅上述步骤 2、3 进行挂载操作即可。

新闻

解决wordpress任意文件删除漏洞

简介:

近日RIPS曝出wordpress直至 4.9.6的版本依然存在一个任意文件删除漏洞,拥有author及类似权限的wordpress站点受到此漏洞威胁,攻击者可通过构造附件的’thumb’路径造成任意文件删除。严重的后果将导致攻击者获取站点管理员权限进而控制服务器。

方法:

找到/wp-includes/post.php文件中第5175行:

function wp_update_attachment_metadata( $attachment_id, $data ) {

修改为:

function wp_update_attachment_metadata( $attachment_id, $data ) { if(isset($data[‘thumb’])){$data[‘thumb’] = basename($data[‘thumb’]);}

新闻

解决wordpress IP验证不当漏洞

简介:
wordpress /wp-includes/http.php文件中的wp_http_validate_url函数对输入IP验证不当,导致黑客可构造类似于012.10.10.10这样的畸形IP绕过验证,进行SSRF。

 

1、找到/wp-includes/http.php文件中第533行:

$same_host = strtolower( $parsed_home[‘host’] ) === strtolower( $parsed_url[‘host’] );

修改为:

if ( isset( $parsed_home[‘host’] ) ) { $same_host = ( strtolower( $parsed_home[‘host’] ) === strtolower( $parsed_url[‘host’] ) || ‘localhost’ === strtolower( $parsed_url[‘host’] ) ); } else { $same_host = false; } ;

2、找到/wp-includes/post.php文件中第549行:

if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0]

修改为:

if ( 127 === $parts[0] || 10 === $parts[0] || 0 === $parts[0] || 0 === $parts[0]

热线电话
随时候命
微信客服
沟通需求
  • 微信一扫,联系我们
联系我们
获取报价
回到顶部

我们使用Cookies来改善您在我们网站上的体验。您同意我们使用Cookies,以便浏览这个网站。