mirror of
https://github.com/ksyasuda/dotfiles.git
synced 2026-03-21 06:11:27 -07:00
update skills
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
# Configuration & Setup
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @cloudflare/puppeteer # or @cloudflare/playwright
|
||||
```
|
||||
|
||||
**Use Cloudflare packages** - standard `puppeteer`/`playwright` won't work in Workers.
|
||||
|
||||
## wrangler.json
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "browser-worker",
|
||||
"main": "src/index.ts",
|
||||
"compatibility_date": "2025-01-01",
|
||||
"compatibility_flags": ["nodejs_compat"],
|
||||
"browser": {
|
||||
"binding": "MYBROWSER"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Required:** `nodejs_compat` flag and `browser.binding`.
|
||||
|
||||
## TypeScript
|
||||
|
||||
```typescript
|
||||
interface Env {
|
||||
MYBROWSER: Fetcher;
|
||||
}
|
||||
|
||||
export default {
|
||||
async fetch(request: Request, env: Env): Promise<Response> {
|
||||
// ...
|
||||
}
|
||||
} satisfies ExportedHandler<Env>;
|
||||
```
|
||||
|
||||
## Development
|
||||
|
||||
```bash
|
||||
wrangler dev --remote # --remote required for browser binding
|
||||
```
|
||||
|
||||
**Local mode does NOT support Browser Rendering** - must use `--remote`.
|
||||
|
||||
## REST API
|
||||
|
||||
No wrangler config needed. Get API token with "Browser Rendering - Edit" permission.
|
||||
|
||||
```bash
|
||||
curl -X POST \
|
||||
'https://api.cloudflare.com/client/v4/accounts/{accountId}/browser-rendering/screenshot' \
|
||||
-H 'Authorization: Bearer TOKEN' \
|
||||
-d '{"url": "https://example.com"}' --output screenshot.png
|
||||
```
|
||||
|
||||
## Requirements
|
||||
|
||||
| Requirement | Value |
|
||||
|-------------|-------|
|
||||
| Node.js compatibility | `nodejs_compat` flag |
|
||||
| Compatibility date | 2023-03-01+ |
|
||||
| Module format | ES modules only |
|
||||
| Browser | Chromium 119+ (no Firefox/Safari) |
|
||||
|
||||
**Not supported:** WebGL, WebRTC, extensions, `file://` protocol, Service Worker syntax.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
| Error | Solution |
|
||||
|-------|----------|
|
||||
| `MYBROWSER is undefined` | Use `wrangler dev --remote` |
|
||||
| `nodejs_compat not enabled` | Add to `compatibility_flags` |
|
||||
| `Module not found` | `npm install @cloudflare/puppeteer` |
|
||||
| `Browser Rendering not available` | Enable in dashboard |
|
||||
Reference in New Issue
Block a user