我想向Odoo控制器发送一些JSON数据,但当我发送请求时,总是得到404响应。
这是我的控制器代码:
import openerp.http as http
import logging
_logger = logging.getLogger(__name__)
class Controller(http.Controller):
@http.route('/test/result', type='json', auth='public')
def index(self, **args):
_logger.info('The controller is called.')
return '{"response": "OK"}'
现在,我在浏览器中输入URL地址(http://localhost:8069/test/result)以检查它是否可用。结果是
function index at 0x7f04a28>, /test/result: Function declared as capable of handling request of type 'json' but called with a request of type 'http'
。这表明控制器正在监听该URL并期望JSON数据。接下来,我打开一个Python控制台并键入以下内容:
import json
import requests
data = {'test': 'Hello'}
data_json = json.dumps(data)
r = requests.get('http://localhost:8069/test/result', data=data_json)
当我在控制台中打印r时,它返回<Response [404]>,并且我无法在日志中看到任何消息(我期望看到调用控制器。)类似的问题在这里有一个,但情况并不完全相同:OpenERP @http.route('demo_json', type="json") URL not displaying JSON Data。有谁能帮我吗?我错了什么?