노드를 만들기 위해 세션 정보로 JSON 데이터를 어떻게 구성합니까?


11

Drupal 7과 서비스 모듈 7.x-3.2를 사용하고 있습니다. 내가 사용하고 크롬에 대한 우체부를 API를 테스트하기 (A HTTP 클라이언트).

내가하고 싶은 일은 사용자를 로그인하고 Drupal 서비스 API를 사용하여 사용자와 노드를 만드는 것입니다.

JSON POST 요청으로 사용자에게 http://example.com/api/user/login에 로그인했습니다 .

여기에 이미지 설명을 입력하십시오

JSON 결과를 얻었습니다.

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

그런 다음 JSON POST 요청을 보내 API를 통해 기사를 만들려고했습니다. (사용자는 기사 노드 를 만들 수있는 권한이 있습니다 .)

여기에 이미지 설명을 입력하십시오

내가 가지고 401 권한이 응답을.

POST 요청을 보내고 노드를 만들려면 세션 쿠키 정보를 포함해야한다고 생각합니다.

세션 정보가 이전에 반환되었습니다.

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

노드 생성을위한 성공적인 JSON POST 요청을 위해 어떻게 활용할 수 있습니까?

답변:


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

type : article 태그 뒤에 쉼표가 없으므로 json이 작동합니다.


2

이것이 도움이되기를 바랍니다.

  • HTTP 요청을하려면 Firefox 애드온 POSTER을 사용하십시오 .

    여기에 이미지 설명을 입력하십시오

    {
      "type" : "article",
      "title" : "Test article with language",
      "language" : "und"
    }
  • 노드가 성공적으로 생성되면 링크가 포함 된 응답을받습니다.

    여기에 이미지 설명을 입력하십시오

  • {
      "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"
          }
       ]
    }
    

  • 이것을 참조 할 수 있습니다

  • 나는 대답했다 I POST에게 서비스 모듈을 사용하여 새 노드 어떻게 질문을. 자세한 내용은 참조하십시오.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.