Anybody?
El domingo, 21 de julio de 2013 14:46:08 UTC-3, Franco escribió:
>
> Greetings everyone,
> I've been using request.restful
> to provide an restful interface to my angularjs app,
> i tried to post data from the angularjs app and it works, it sends the
> data but in the POST method i've got an empty dictionary, here is my code
> and some data logs:
>
> default controller
> @request.restful()
> def api():
> response.view = 'generic.json'
> def GET(table_name, id=None):
> if table_name in db:
> table = db[table_name]
> if id == None:
> query = (table.id > 0)
> else:
> try:
> id = int(id or 0)
> except:
> id = 0
> query = (table.id == id)
> return {table_name : db(query).select()}
> def POST(table_name, **vars):
> print(vars)
> return locals()
>
> angular code used to post data:
> $http.post('http://127.0.0.1:8000/angularjs/default/api/person/', item).
> success(function(data) {
> console.log('POST: '+ item.first_name +' Result: '+ data);
> });
>
> chrome network log:
>
>>
>> 1. Request URL:
>> http://127.0.0.1:8000/angularjs/default/api/person/
>> 2. Request Method:
>> POST
>> 3. Status Code:
>> 200 OK
>> 4. Request Headersview source
>> 1. Accept:
>> application/json, text/plain, */*
>> 2. Accept-Encoding:
>> gzip,deflate,sdch
>> 3. Accept-Language:
>> es,en-US;q=0.8,en;q=0.6
>> 4. Connection:
>> keep-alive
>> 5. Content-Length:
>> 46
>> 6. Content-Type:
>> application/json;charset=UTF-8
>> 7. Cookie:
>> csrftoken=hMi7rvIHaxAu09tX0H8c2SDqmwwgS7Ra;
>> session_id_admin=127.0.0.1-9ef67e29-1352-4fef-a621-fcc0c3fa9182;
>> session_id_angularjs=127.0.0.1-9453b1e9-444d-4fe4-8110-9d956bfda316
>> 8. Host:
>> 127.0.0.1:8000
>> 9. Origin:
>> http://127.0.0.1:8000
>> 10. Referer:
>> http://127.0.0.1:8000/angularjs/default/index
>> 11. User-Agent:
>> Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,
>> like Gecko) Chrome/28.0.1500.72 Safari/537.36
>> 5. Request Payloadview source
>> {id:0, first_name:John, last_name:Doe}
>> 1. first_name: "John"
>> 2. id: 0
>> 3. last_name: "Doe"
>> 6. Response Headersview source
>> 1. Cache-Control:
>> no-store, no-cache, must-revalidate, post-check=0, pre-check=0
>> 2. Connection:
>> keep-alive
>> 3. Content-Length:
>> 4
>> 4. Content-Type:
>> text/html; charset=utf-8
>> 5. Date:
>> Sun, 21 Jul 2013 17:38:41 GMT
>> 6. Expires:
>> Sun, 21 Jul 2013 17:38:41 GMT
>> 7. Pragma:
>> no-cache
>> 8. Server:
>> Rocket 1.2.6 Python/2.7.5
>> 9. Set-Cookie:
>> session_id_angularjs=127.0.0.1-9453b1e9-444d-4fe4-8110-9d956bfda316;
>> Path=/
>> 10. X-Powered-By:
>> web2py
>>
>>
> I made some tests using the "requests" module and it works, so for
> instance i think that the problem is within the way that angularjs sends
> the data.
>
> Thanks in advance,
>
> Franco
>
>>
--
---
You received this message because you are subscribed to the Google Groups
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.