Saya telah merujuk banyak tautan termasuk yang berikut:
- Modul layanan. Bagaimana cara membangun data JSON dengan info sesi untuk membuat simpul?
- GitHub - Membuat simpul menggunakan Layanan 6.3 REST
Saya mencoba beberapa cara untuk POST node baru ke situs Drupal, tetapi saya gagal. Saya telah membuat sampel CCK untuk menyimpan data siswa dengan nama, usia, jenis kelamin, DOB, dan menambahkan beberapa daftar.
Saya telah menginstal dan mengkonfigurasi modul Layanan (D7), dan membuat titik akhir layanan di layanan.
Seperti yang diharapkan, GET adalah cara termudah untuk mendapatkan detail node di JSON. http://localhost/drupal/services/node
cukup daftarkan semua node.
Saya masih tidak tahu bagaimana cara menggunakan metode POST .
Saya ingin mencari siswa yang namanya berisi john . Saya mencoba
localhost/drupal/services/node&node[name]=john
. Saya menggunakan plugin POST Man untuk Chrome tanpa hasil. Saya juga mencoba beberapa cara lain.Saya mencoba menambahkan siswa baru ke situs tanpa hasil.
Adakah yang bisa membimbing saya untuk membuat pekerjaan di atas baik-baik saja?
PEMBARUAN:
Saya mencoba menambahkan node baru dari artikel jenis . Itu bekerja dengan baik. tetapi ketika saya mencoba untuk menambahkan node jenis Departemen CCK Itu menunjukkan " s: 22:" Validasi CSRF gagal "; " Berikut adalah screenshot
Saya telah melalui tautan https://drupal.org/node/2013781
Saya mengikuti session = session_name = session_id tetapi saya masih mendapatkan kesalahan.
Jawaban:
Semoga ini bisa membantu Anda,
Untuk Drupal 7
Alat yang digunakan:
Permintaan HTTP
Untuk membuat permintaan HTTP, Anda perlu menggunakan add-on POSTER Firefox .
Dua metode yang biasa digunakan untuk permintaan-respons antara klien dan server adalah:
Setelah add-on Diunduh. Buka Firefox -> Tools -> Poster
Pastikan untuk mengaktifkan otentikasi Sesi . Setelah Layanan dikonfigurasi dengan benar, sebelum membuat simpul Anda harus masuk . Setelah login, Anda dapat membuat node.
Untuk login gunakan metode POST, dengan URL seperti - http://XXXXXXXX.com/demo/rulebook/rulebook_endpoint/user/login
Jika itu adalah pengguna yang valid maka itu akan mengembalikan detail pengguna dengan ID sesi dan Nama . Jika tidak valid maka Access akan ditolak
Dengan menggunakan nama dan ID Sesi di POST HEADER, kita dapat membuat simpul baru
Sekarang setelah menambahkan HEADER, Anda harus membuat permintaan HTTP POST dan memastikan pengguna harus memiliki izin untuk membuat simpul.
Jika simpul dibuat, Anda akan mendapatkan respons dengan tautan simpul
CATATAN: Jika Anda menginginkan respons di JSON, Anda harus selalu menambahkan .json di akhir URL. mis., http://XXXXXXXX.com/test/endpoint/user.json ATAU http://XXXXXXXX.com/test/endpoint/node.json ATAU http://XXXXXXXX.com/test/endpoint/user/user_id .json OR http://XXXXXXXX.com/test/endpoint/node/node_id.json
sumber
Untuk Drupal 7 dan Layanan 7.x-3.x
Langkah 1: Keluarkan permintaan pos untuk
user.login
sumber daya dengan nama pengguna dan kata sandi Anda.Jika login berhasil, Anda akan mendapatkan objek respons dengan 4 properti:
Tangkapan layar dari google chrome postman
Langkah 2: Keluarkan permintaan pos
node
dengan 2 headerTangkapan layar dari google chrome postman
sumber
Jika Anda melakukan POST ke API REST, maka Anda harus memasukkan semuanya ke dalam data POST , bukan ke URL . Di tukang pos Anda dapat mengatur permintaan untuk mengirim, daripada mengetik ke
x-www-form-urlencoded
dan di bawah ini Anda dapat menambahkan nilai data Anda. Jangan lupa untuk menambahkan status, uid, bahasa, jenis, judul dan kemudian nilai tambahan. URL sumber daya seharusnya hanyaHOST/REST_API_PATH/node
.sumber