Bagaimana cara memanggil API AWS ke PutItem ke tabel DynamoDB melalui url?

Jadi saya mencoba menjalankan permintaan PutItem dari AWS API Gateway saya. Saya mencoba melakukan ini dengan menggunakan jalur /storeid/{username}/{password}. Saya telah melakukan pemetaan sebagai json dan pengujian dalam API berfungsi dengan sempurna dan saya melihat data saya muncul di tabel DynamoDB saya, tetapi ketika saya menerapkan API dan mencoba menjalankan permintaan ini, saya menerima respons berikut: {message:Missing Authentication Token }. Permintaan ini tidak memiliki otorisasi atau persyaratan kunci API apa pun. Mengapa tes berhasil tetapi urlnya tidak berfungsi saat dipanggil. ps-ya saya memasukkan url yang benar

Tolong bantu!


person Joshua Meier    schedule 06.10.2020    source sumber
comment
Apakah ini menjawab pertanyaan Anda? Token Otentikasi Tidak Ada saat mengakses API Gateway?   -  person JD D    schedule 06.10.2020


Jawaban (1)


Beberapa hal yang perlu diperiksa

  1. Verifikasi bahwa Otorisasi diatur ke Tidak Ada (yaitu bukan IAM) di pengaturan permintaan Metode Anda.
  2. Verifikasi bahwa Anda menerapkan perubahan API ke tahapan Anda. Menggunakan konsol, klik Tindakan -› Deploy API.
  3. Setelah diterapkan, URL yang akan digunakan akan ditampilkan saat Anda memilih Tahap tempat Anda menerapkan. Pastikan Anda menggunakan URL yang benar.

Selain itu, sebagai catatan tambahan, memasukkan kata sandi di jalur URL atau parameter kueri Anda adalah ide yang sangat buruk. Pertimbangkan untuk mengirim data di badan permintaan sebagai POST dan melakukan sesuatu seperti HTTPS dan hashing untuk melindungi kata sandi.

person JD D    schedule 06.10.2020
comment
Maaf saya tidak memberikan konteks di balik pertanyaan ini. Saya melakukan ini untuk proyek sekolah sehingga semua data akan dibuat dan hanya digunakan oleh saya dan tim proyek. Saya telah melakukan langkah 1 hingga 3 berkali-kali. Saya masih menerima pesan token yang hilang. Saya mencantumkan metode ini sebagai postingan dan tindakannya adalah PutItem. Tidak yakin apa lagi yang bisa saya lakukan, saya telah meneliti/mencobanya selama seminggu dan saya belum dapat menemukan jawabannya. - person Joshua Meier; 06.10.2020
comment
baca berbagai jawaban di link yang saya tambahkan di komentar, ada banyak penyebab token otentikasi hilang - person JD D; 06.10.2020
comment
juga, jika Anda mencantumkan tindakan Anda sebagai POST, menekan URL di browser akan menjalankan GET dan tidak akan berfungsi.. bagaimana Anda menjalankan permintaan POST? Mungkin mencoba sesuatu seperti Tukang pos - person JD D; 06.10.2020
comment
Tautan yang Anda kirim sudah saya baca dan tidak berlaku untuk saya. Apakah ada bedanya jika saya mengubah permintaan menjadi PUT? saya akan melihat ke Postman ketika saya melihat beberapa video youtube tentang orang-orang yang menggunakannya, saya hanya tidak tahu apa itu. Terima kasih banyak atas tanggapan dan bantuannya!!!! - person Joshua Meier; 06.10.2020
comment
PUT tidak akan membuat perbedaan di sini, permintaan URL browser adalah GET secara default dan Anda harus melakukan sesuatu yang berbeda untuk membuat permintaan POST atau PUT. Tukang pos harus melakukan triknya dan merupakan alat populer untuk menguji REST API yang memungkinkan Anda menentukan tindakan HTTP, dan menambahkan header dan isi ke permintaan Anda tanpa harus menulis kode eksplisit untuk menguji - person JD D; 06.10.2020
comment
Saya ingin bertanya lebih banyak, tetapi saya menggunakan tukang pos dan saya dapat menguji api dan berfungsi dengan baik dari tukang pos. Apakah saya hanya menggunakan bagian kode untuk menjalankan permintaan posting ini atau ada hal lain yang perlu saya lakukan? Maaf, masih sangat baru dalam pemrograman semacam ini - person Joshua Meier; 11.10.2020