Eklenti hızlı başlangıcı
Bu kılavuz boş klasörden çalışan eklentiye hızlıca geçmenizi sağlar.
1) Yalnızca arka uç içeren minimal eklenti oluşturun
Şu dosyaları içeren klasör oluşturun:
text
my-plugin/
manifest.json
backend/
script.jsmanifest.json:
json
{
"id": "my-plugin",
"name": "My Plugin",
"version": "0.1.0",
"plugins": [
{
"kind": "backend",
"id": "my-plugin-backend",
"entrypoint": "backend/script.js"
}
]
}backend/script.js:
js
async function init(sdk) {
sdk.console.log("Plugin started");
sdk.events.onInterceptResponse(function(req, res) {
if (!res) return;
if (res.getCode() === 403) {
sdk.console.warn("403 on " + req.getUrl());
}
});
}Eklentiler > Yükle üzerinden klasörü seçin, eklentiyi etkinleştirin ve günlüklerde Plugin started göründüğünü doğrulayın.
2) TypeScript kullanıyorsanız
Şu yapıyı kullanın:
text
my-plugin/
manifest.json
backend/
src/index.tsŞu komutla paketleyin:
bash
pnpm add -D @ogmabox/ogma-sdk esbuild typescript
pnpm exec esbuild backend/src/index.ts \
--bundle \
--platform=neutral \
--format=iife \
--external:@ogma/sdk --external:@ogmabox/ogma-sdk \
--outfile=backend/script.jsArdından klasörü yukarıdaki gibi yükleyin.
3) Ön ucu daha sonra ekleyin
Yalnızca panel gerektiğinde ön uç kaydı ve arayüz dosyaları ekleyin:
text
my-plugin/
frontend/
script.js
style.css # optionalArdından manifest.json dosyasını şununla genişletin:
json
{
"kind": "frontend",
"id": "my-plugin-frontend",
"entrypoint": "frontend/script.js",
"backend": { "id": "my-plugin-backend" }
}Ön uç iletişiminde window.ogmaSDK.ready(...) kullanın ve arka uç çağrılarını sdk.api işleyicilerinde tutun.
4) Sık gereken izinler
Yukarıdaki arka uç örneği için:
- İzin gerekmez (güvenli varsayılanlar otomatik verilir)
Eklentiniz dışarıya istek gönderiyorsa ekleyin:
json
"permissions": ["send_requests"]Eklentiniz bulgu yazıyorsa ekleyin:
json
"permissions": ["write_findings"]Yalnızca gerçekten kullandığınız izinleri isteyin.
İlk eklentide sorun giderme
Plugin failed to initialize→ Günlükler bölümünü açıpinit(sdk)tanımlandığını doğrulayın.Invalid manifest→ JSON virgüllerini ve tırnaklarını kontrol edin.- Geri çağrılar çalışmıyor → eklentinin etkin olduğunu ve ilgili olayın (
onInterceptResponse) kaydedildiğini doğrulayın.
Tam API başvuru kaynakları: