ConfigError: Missing region in config
TL;DR — AWS SDK, hangi bölgeyle konuşacağını bilmiyor. Onu istemcide açıkça (new DynamoDBClient({ region: 'us-east-1' })) ya da AWS_REGION ortam değişkeni aracılığıyla ya da ~/.aws/config'te ayarlayın.
Ne anlama gelir
ConfigError: Missing region in configHer DynamoDB uç noktası bölgeseldir, bu yüzden SDK bir istek gönderebilmeden önce bir bölge çözmelidir. Bu tam ifade, varsayılan olarak bir bölge seçmeyen JavaScript v2 için AWS SDK'sından (artık destek sonu) gelir — yapılandırma kaynaklarından hiçbiri bir bölge sağlamadığında, herhangi bir ağ çağrısından önce bunu fırlatır. Diğer SDK'lar ve AWS CLI, hiç bölge yapılandırılmadığında kendi eşdeğerleriyle başarısız olur.
Neden olur
- İstemciye bölge iletilmemiş ve ortamda
AWS_REGIONyok (JavaScript SDK'sıAWS_REGION'ı okur; AWS CLI ayrıcaAWS_DEFAULT_REGIONve--region'ı da onurlandırır). - SDK'nın hiç okumadığı
~/.aws/config'te bir bölge — JavaScript SDK v2, paylaşılan yapılandırma dosyasını yalnızcaAWS_SDK_LOAD_CONFIGortam değişkeni ayarlandığında yükler; o olmadan, gayet iyi birregion =satırı yoksayılır. - Ortam değişkeni adında bir yazım hatası (
AWS_REGIONS,REGION).
Nasıl düzeltilir (bunlardan herhangi biri)
- İstemcide ayarlayın (en açık):
import {DynamoDBClient} from '@aws-sdk/client-dynamodb'; const client = new DynamoDBClient({region: 'us-east-1'}); - Ortam değişkeni:
export AWS_REGION=us-east-1 - AWS yapılandırma dosyası (
~/.aws/config):JavaScript SDK v2'de, SDK'nın bu dosyayı gerçekten okuması için[default] region = us-east-1AWS_SDK_LOAD_CONFIG=1de ayarlayın (CLI ve diğer çoğu SDK onu varsayılan olarak okur). - DynamoDB Local mi? Yine de bir bölge dizesine (herhangi bir değer — yalnızca yerel veritabanı dosyasını adlandırmak için kullanılır) artı bir
endpoint'e ihtiyaç duyar:const client = new DynamoDBClient({region: 'local', endpoint: 'http://localhost:8000'});
DynoTable’ı Local’e yönelt
DynoTable her AWS profile'de bölgeyi kaydeder — Ayarlar → Profiller → Profil Ekle, ardından kaydetmeden önce açılır menüden bölgeyi seçin. Kenar çubuğunun altındaki profil çipi aktif bölgeyi gösterir; geçiş yapmak için ⌘P tuşuna basın. Bölge boş olduğunda veya paylaşılan yapılandırma dosyası AWS_SDK_LOAD_CONFIG gerektiren bir SDK tarafından yoksayıldığında Bağlantı Testi hızlı bir şekilde başarısız olur.
Yerel için Yerel İndir seçeneğini kullanın (veya profil uç noktasını http://localhost:8000'ye yönlendirin) ve herhangi bir bölge dizesini ayarlayın — DynoTable, sürüklenmemeleri için uç noktayı ve bölgeyi aynı profilde tutar. Bağlandıktan sonra ⌘K ile bir tablo açın ve isteğin beklediğiniz bölgeye gittiğini onaylayın. query builder görseli, aynı ayarları uygulama koduna yapıştırmadan önce profil bölgesini kanıtlamak için kullanışlıdır.
SDK v2 ve v3 bölge çözünürlük farklarında hata ayıklarken, DynoTable'nin kullandığı profil ayarlarını uygulamanızın ortam değişkenleriyle yan yana karşılaştırın. Aşamalandırma (⌘S), toplu işiniz çalıştırılmadan önce bir yazmayı yapılandırılmış profile göre test etmenize olanak tanır.
Kaynaklar
- Setting the AWS Region — AWS SDK for JavaScript v2 (2026-07-13 tarihinde doğrulandı)
- Troubleshooting errors for the AWS CLI (2026-07-13 tarihinde doğrulandı)
İlgili hatalar
- Güvenlik belirteci geçersiz
- ResourceNotFoundException — bir bölge ayarlandığında genellikle bir bölge uyuşmazlığı.
- Unable to start DynamoDB Local process
- Öğrenin: Connect to DynamoDB Local & LocalStack
Kaynaklar
- Setting the AWS Region — AWS SDK for JavaScript v2 Developer Guide
- Troubleshooting errors for the AWS CLI — AWS CLI User Guide
- DynamoDB local usage notes — Amazon DynamoDB Developer Guide
En son 2026-07-13 tarihinde yukarıda bağlantısı verilen resmi AWS belgelerine karşı doğrulandı.