requests.put (REST) [RESOLVIDO]

1. requests.put (REST) [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 10/09/2014 - 11:42h

Pessoal bom dia...
Estou com um problema em tentar dar um update no meu json do servidor, será que etou enviando corretamente?
Segue:


Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> import requests
>>> import json
>>> req_json = 'http://186.233.128.48/detraf_voxbras/seek/block'
>>> data = requests.get(req_json)
>>> dec = json.loads(data.text)
>>> requests.put(req_json,data=dec[0])
<Response [405]>

Meu json do servidor:

Block List

list all endpoints event block

GET /detraf_voxbras/seek/block/
HTTP 200 OK
Content-Type: application/json
Vary: Accept
Allow: POST, OPTIONS, GET

[
{
"id_block": 1,
"ip_sw": "10.100.0.11",
"mac": "00-01-40-2a-0a-fc",
"date_start_env": "2014-09-09T09:10:01",
"date_end_env": "2014-09-09T09:10:02",
"number_tel": "",
"speed": 1,
"port": 1,
"tag_vlan_data_lan1": "1",
"tag_vlan_data_lan2": "1",
"tag_vlan_data_hpna": "1",
"tag_vlan_voip": "100",
"name_end_point": "teste",
"status_event": "ATIVO"
},
{
"id_block": 4,
"ip_sw": "10.100.0.11",
"mac": "00-01-40-2a-0c-76",
"date_start_env": "2014-09-10T21:36:48",
"date_end_env": "2014-09-15T21:32:42",
"number_tel": "",
"speed": 1,
"port": 2,
"tag_vlan_data_lan1": "2",
"tag_vlan_data_lan2": "3",
"tag_vlan_data_hpna": "4",
"tag_vlan_voip": "5",
"name_end_point": "Silvia Maria Cog",
"status_event": "ATIVO"
}
]



  


2. Erro 405

Roberto Soares (3spreto)
roberto_espreto

(usa Slackware)

Enviado em 10/09/2014 - 14:11h

@arrobaigoremuniz,

Veja que apresenta um erro 405, que significa, "Method not allowed" (Método Não Permitido).

Você está tentando enviar um PUT para o servidor, verifique que no servidor é aceito apenas 3 métodos:

Allow: POST, OPTIONS, GET

Altere o requests.put por requests.post que possivelmente irá funcionar.

Link para consulta, se quiser: http://www.pythonforbeginners.com/requests/using-requests-in-python

Abs,


3. Re: requests.put (REST) [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 15/09/2014 - 15:29h

Obrigado pela resposta. Mas é que como eu estava passando mais de um elemento no json precisava especificar qual deles iria receber a atualização via put.








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts