INTEGRITY Документация

Локальная разработка

Hyperdrive можно использовать при локальной разработке и тестировании Workers. Wrangler, интерфейс командной строки для Workers, предоставляет два варианта локальной разработки:

Используйте wrangler dev

По умолчанию wrangler dev запускает код Worker локально на вашем компьютере. Чтобы подключиться к базе данных во время локальной разработки, настройте localConnectionString который указывает напрямую на вашу базу данных.

localConnectionString работает как с локальными, так и с удаленными базами данных:

Настройка с помощью переменной окружения

Рекомендуемый подход: использовать переменную окружения, чтобы не сохранять учётные данные в системе контроля версий:

# Your configured Hyperdrive binding is "HYPERDRIVE"
export CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_HYPERDRIVE="postgres://user:password@your-database-host:5432/database"
npx wrangler dev

Формат переменной окружения: CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_<BINDING_NAME>, где <BINDING_NAME> это имя привязки, назначенной вашему Hyperdrive в конфигурационный файл Wrangler.

Чтобы удалить переменную окружения: unset CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_<BINDING_NAME>

Например, чтобы задать строку подключения для локальной базы данных:

export CLOUDFLARE_HYPERDRIVE_LOCAL_CONNECTION_STRING_HYPERDRIVE="postgres://user:password@localhost:5432/databasename"
npx wrangler dev

Настройка в конфигурационном файле Wrangler

Также можно задать localConnectionString в вашем конфигурационный файл Wrangler:

{
	"hyperdrive": [
		{
			"binding": "HYPERDRIVE",
			"id": "c020574a-5623-407b-be0c-cd192bab9545",
			"localConnectionString": "postgres://user:password@localhost:5432/databasename"
		}
	]
}
[[hyperdrive]]
binding = "HYPERDRIVE"
id = "c020574a-5623-407b-be0c-cd192bab9545"
localConnectionString = "postgres://user:password@localhost:5432/databasename"

Если одновременно заданы переменная окружения и localConnectionString заданы в конфигурационном файле Wrangler, приоритет получает переменная окружения.

Используйте wrangler dev --remote

Когда вы выполняете wrangler dev --remote, ваш Worker выполняется в сети Cloudflare и использует развернутую конфигурацию Hyperdrive. Это означает:

Этот режим удобен, чтобы перед развёртыванием проверить, как ваш Worker ведёт себя с включёнными функциями Hyperdrive.

Настройте привязку Hyperdrive в wrangler.jsonc:

{
	"hyperdrive": [
		{
			"binding": "HYPERDRIVE",
			"id": "your-hyperdrive-id",
		},
	],
}
[[hyperdrive]]
binding = "HYPERDRIVE"
id = "your-hyperdrive-id"

Чтобы запустить сеанс удалённой разработки:

npx wrangler dev --remote

См. wrangler dev документация чтобы узнать больше о настройке локальной сессии разработки.