Bagaimana cara membuat data JSON dengan info sesi untuk membuat simpul?

11

Saya menggunakan Drupal 7 dan modul Layanan 7.x-3.2. Saya menggunakan tukang pos untuk Chrome (klien http) untuk menguji API.

Yang ingin saya lakukan adalah login pengguna dan membuat node dengan pengguna menggunakan API layanan Drupal.

Saya masuk ke pengguna dengan permintaan JSON POST ke http://example.com/api/user/login .

masukkan deskripsi gambar di sini

Saya berhasil mendapatkan hasil JSON.

{
    "sessid": "KrZjlcY3rFr8v6iLoskcVQN9DmDWsg5yZqIjBeydEBY",
    "session_name": "SESS9fe39db36ccd7afd64e034fefa0129e1",
    "user": {
        "uid": "31",
        "name": "test_user",
        "mail": "[email protected]",
        "theme": "",
        "signature": "",
        "signature_format": "filtered_html",
        "created": "1352985941",
        "access": "1352991170",
        "login": 1352991510,
        "status": "1",
        "timezone": "",
        "language": "",
        "picture": null,
        "init": "[email protected]",
        "data": false,
        "roles": {
            "2": "authenticated user"
        },
        "rdf_mapping": {
            "rdftype": [
                "sioc:UserAccount"
            ],
            "name": {
                "predicates": [
                    "foaf:name"
                ]
            },
            "homepage": {
                "predicates": [
                    "foaf:page"
                ],
                "type": "rel"
            }
        }
    }
}

Kemudian saya mencoba membuat artikel melalui API dengan mengirimkan permintaan JSON POST. (Pengguna memiliki izin untuk membuat simpul Artikel .)

masukkan deskripsi gambar di sini

Saya mendapat respons 401 Tidak Resmi .

Saya kira saya harus memasukkan informasi cookie sesi untuk mengirim permintaan POST, untuk membuat simpul.

Saya memiliki informasi sesi yang sebelumnya dikembalikan.

"sessid": "KrZjlcY3rFr8v6iLoskcVQN9DmDWsg5yZqIjBeydEBY",
"session_name": "SESS9fe39db36ccd7afd64e034fefa0129e1",

Bagaimana saya bisa menggunakannya untuk membuat permintaan JSON POST yang berhasil untuk membuat simpul?

gilzero
sumber

Jawaban:

2
{
   "title": "Just another drupal Post",
   "type": "Article"
}

perhatikan tidak ada koma setelah jenis: tag artikel sehingga json Anda berfungsi.

Sunny Patel
sumber
2

Semoga ini bisa membantu Anda,

  • Untuk membuat permintaan HTTP, Saya menggunakan Firefox add-on POSTER .

    masukkan deskripsi gambar di sini

    {
      "type" : "article",
      "title" : "Test article with language",
      "language" : "und"
    }
  • Jika simpul berhasil dibuat, Anda akan mendapat respons dengan tautan.

    masukkan deskripsi gambar di sini

  • Contohnya

    {
      "type": "article",
      "title": "Test article",
      "body": { 
        "und": [{ 
          "value": "test body!"
         }]
      },
      "language" : "und"
    }
    {
       "title":"Review",
       "type":"establishment_review",
       "field_establishment":[
          {
             "nid":{
                "nid":"[nid:26686]"
             }
          }
       ],
       "field_fivestar_value":[
          {
             "rating":"20",
             "target":"0"
          }
       ],
       "field_review":[
          {
             "value":"comments about the restaurant"
          }
       ]
    }
    

  • Anda bisa merujuk ini

  • Saya telah menjawab Bagaimana saya POST simpul baru menggunakan pertanyaan modul Layanan . Anda dapat merujuk untuk informasi lebih lanjut.

inizio
sumber
-1

Anda perlu menetapkan cookie="sessionname=sessionid"nilai di header, di mana nama sesi berasal dari titik akhir / pengguna / URL masuk.

Gholave ​​Ranjeett Vijaykumar
sumber