Jump to content
Helio13

Obter id de uma resposta post

Recommended Posts

Helio13

Oi.

Estou a inserir dados através de rest, e quando faço o meu post, ele ao mesmo tempo retorna-me uma resposta com os dados que inseri mas já com o id do registo...

Como consigo obter esse id?

Eu quando faço o post, recebo uma resposta com um json assim:

{"IdGenre": [{"GenreType": "Drama", "id": "518cf9cf8774a718901cc219", "resource_uri": "/test/api/v1/Genre/518cf9cf8774a718901cc219"}], "MovieActor": [], "MovieCover": "<GridFSProxy: None>", "MovieDuration": "44", "MovieObservations": "ds", "MovieRating": "4", "MovieTitle": "aaa", "MovieTitlePT": "aaa", "MovieYear": 4444, "Moviesynopsis": null, "id": "518d123d8774a712f40d5485", "resource_uri": "/test/api/v1/Movie/518d123d8774a712f40d5485"}

Como posso obter o id??

Share this post


Link to post
Share on other sites
HappyHippyHippo

json.IdGenre[0].id

talvez ...

se o id for o campo "id" ...

se o objecto com o json se chamar "json" ...


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Helio13

Sim o id é o campo "id" mas aquele que está no fim do json.

O que queres dizer com o objecto com o json se chamar "json"??

No post envio assim: $scope.data = $scope.movies.save({...})

Eu estava a tentar assim:

var response = JSON.stringify("id");
alert(response.id);

Mas ele dá-me undefined no alert

Edited by Helio13

Share this post


Link to post
Share on other sites
HappyHippyHippo

nota : eu nunca usei a biblioteca que está a usar. todo o que estou a dizer são simples bitaites ...

se a resposta se encontra gravada em $scope.data:

$scope.data = $scope.movies.save({...});

e a resposta já se encontra em JSON, então bastaria ter:

$scope.data = $scope.movies.save({...});
alert($scope.data.id);


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Helio13

Hum...

Eu quando faço

alert($scope.data.id);

o que me aparece no alert é undefined

Não estou a perceber porque...

Share this post


Link to post
Share on other sites
Helio13

Aparece isto: [object Object]

Por exemplo, se eu fizer isto:

alert(JSON.stringify($scope.data));

Ele mostra me um json com os dados que fiz post, e não o json que o resposta de devolve...

Edited by Helio13

Share this post


Link to post
Share on other sites
jsWizard

... se


var responseObj = {"IdGenre": [{"GenreType": "Drama", "id": "518cf9cf8774a718901cc219", ..........

alert(responseObj.IdGenre[0].id);

e aí está o id, mas estou a assumir neste meu exemplo que o object JSON que estás a receber é atribuído à variável responseObj.

Inté!

Edited by jsWizard

Share this post


Link to post
Share on other sites
Helio13

Eu assim como disseste sei...mas a questão é que eu faço o seguinte para fazer o post:

$scope.data = $scope.movies.save({..})

E envio os dados, e quando envio, depois ele devolve me automaticamente aquele json com os dados que foram inseridos e o id desse registo.

No firebug do meu post, no postar estão os dados que enviei, e na resposta está o json que mostrei...

Mas não sei como aceder ao json para obter o id, não sei se ele fica guardado no $scope.data ou não

Share this post


Link to post
Share on other sites
HappyHippyHippo

usa o firebug para saber dos dados no objecto $scope.data (usa breakpoints)


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Helio13

Obrigado, pela ajuda.

Já consegui resolver o problema.

Tinha que usar callback, para aceder à resposta.

Share this post


Link to post
Share on other sites
brunoais
var obj = JSON.parse({"IdGenre": [{"GenreType": "Drama", "id": "518cf9cf8774a718901cc219", "resource_uri": "/test/api/v1/Genre/518cf9cf8774a718901cc219"}], ..., "resource_uri": "/test/api/v1/Movie/518d123d8774a712f40d5485"})
alert(obj.IdGenre[0].id);

Edited by brunoais

"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.