Still nothing: (with or without /default/) Python 2.7.3 (default, Sep 26 2013, 20:03:06) [GCC 4.6.3] on linux2 Type "copyright", "credits" or "license()" for more information. >>> import requests >>> test_params = {'api_key': 'e5dcc229-906d-47f8-b6ab-d184509f4f0b', 'f_test': 'test', 'f_project': 'Reader', 'f_platform': 'Android', 'f_device': 'Toshiba', 'f_steps': '10', 'f_matches':'7', 'f_missmatches': '3'}
>>> r = requests.post('http://127.0.0.1:8000/qatests/api', params=test_params) >>> r = requests.post('http://127.0.0.1:8000/qatests/default/api', params=test_params) >>> On Friday, January 31, 2014 2:27:47 AM UTC+2, Anthony wrote: > > No, just run this code from a Python shell: > > test_params = {'api_key': 'api_key', 'test': 'test', 'f_platform': > 'platform', 'f_device': 'device', 'f_steps': '10', 'f_matches':'7', > 'f_missmatches': '3', 'f_missing': '0'} > r = requests.post('http://127.0.0.1:8000/qatests/api', params=test_params) > > and check the value of r.content. > > On Thursday, January 30, 2014 4:47:20 PM UTC-5, Avi A wrote: >> >> Nothing is returned: >> avi@avi-S500CA:~/applitools$ python test_json.py >> avi@avi-S500CA:~/applitools$ >> >> On Thursday, January 30, 2014 11:42:24 PM UTC+2, Anthony wrote: >>> >>> Just run your request code from a Python shell and check the value of >>> r.content. >>> >>> Anthony >>> >>> On Thursday, January 30, 2014 4:22:29 PM UTC-5, Avi A wrote: >>>> >>>> All I get in the client is: >>>> Process finished with exit code 0 >>>> >>>> On Thursday, January 30, 2014 11:20:11 PM UTC+2, Anthony wrote: >>>>> >>>>> .validate_and_insert returns a response object with an .id attribute >>>>> and an .errors attribute. If the insert is successful, response.idhas the >>>>> id of the inserted records, and if there are any validation errors, >>>>> response.errors is a dictionary of field names and error messages. You >>>>> can >>>>> have your function conditionally return the new record ID (or some >>>>> success >>>>> message) or a string summary of the errors. Then just check the content >>>>> of >>>>> that return value from the client where you are making the API requests. >>>>> >>>>> Anthony >>>>> >>>>> On Thursday, January 30, 2014 2:29:02 PM UTC-5, Avi A wrote: >>>>>> >>>>>> what do you mean? How can I check it? >>>>>> >>>>>> >>>>>> On Thursday, January 30, 2014 8:39:56 PM UTC+2, Anthony wrote: >>>>>>> >>>>>>> What does .validate_and_insert return? >>>>>>> >>>>>>> On Thursday, January 30, 2014 1:11:18 PM UTC-5, Avi A wrote: >>>>>>>> >>>>>>>> Thank you very much. >>>>>>>> No errors now, but still not inserting. I'll give it some more >>>>>>>> tries and get back if required. >>>>>>>> thanks again. >>>>>>>> >>>>>>>> On Thursday, January 30, 2014 7:59:23 PM UTC+2, Anthony wrote: >>>>>>>>> >>>>>>>>> Your api() function should end with: >>>>>>>>> >>>>>>>>> return locals() >>>>>>>>> >>>>>>>>> locals() is a dictionary containing all the variables (including >>>>>>>>> the functions) defined in the local function scope. >>>>>>>>> >>>>>>>>> Note, this is why it helps to describe the exact error/failure. >>>>>>>>> Initially I hadn't noticed the missing locals() return, but seeing >>>>>>>>> the >>>>>>>>> exception made it obvious. >>>>>>>>> >>>>>>>>> Anthony >>>>>>>>> >>>>>>>>> On Thursday, January 30, 2014 5:30:52 AM UTC-5, Avi A wrote: >>>>>>>>>> >>>>>>>>>> Hi, >>>>>>>>>> I am trying something like that: >>>>>>>>>> #on one local script instance: >>>>>>>>>> import requests >>>>>>>>>> >>>>>>>>>> test_params = {'api_key': 'api_key', 'test': 'test', >>>>>>>>>> 'f_platform': 'platform', 'f_device': 'device', 'f_steps': '10', >>>>>>>>>> 'f_matches':'7', 'f_missmatches': '3', >>>>>>>>>> 'f_missing': '0'} >>>>>>>>>> r = requests.post('http://127.0.0.1:8000/qatests/api', >>>>>>>>>> params=test_params) >>>>>>>>>> >>>>>>>>>> #and the api function: >>>>>>>>>> >>>>>>>>>> @request.restful() >>>>>>>>>> def api(): >>>>>>>>>> response.view = 'generic.'+request.extension >>>>>>>>>> def GET(search): >>>>>>>>>> pass >>>>>>>>>> clients = db(db.auth_user).select(db.auth_user.api_key) >>>>>>>>>> t = db.t_tests_results >>>>>>>>>> def POST(**post_params): >>>>>>>>>> for client in clients: >>>>>>>>>> if client.api_key == post_params.api_key: >>>>>>>>>> return t.validate_and_insert(post_params.test, >>>>>>>>>> post_params.f_platform, >>>>>>>>>> post_params.f_device, >>>>>>>>>> post_params.f_steps, >>>>>>>>>> post_params.f_matches, >>>>>>>>>> >>>>>>>>>> post_params.f_missmatches, post_params.f_missing) >>>>>>>>>> else: >>>>>>>>>> raise HTTP(400) >>>>>>>>>> >>>>>>>>>> It's not working... Any help? >>>>>>>>>> Thanks. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- 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 web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.