擅长:python、mysql、java
<p>正如一些人所说,子域算作域,我有一个跨域问题:)</p>
<p>我通过创建一个Django中间件来解决这个问题,如果视图返回JSON并且请求附加了一个回调,那么该中间件将从我的视图中更改响应。</p>
<pre><code>class JSONPMiddleware:
def process_response(self, request, response):
ctype = response.get('content-type', None)
cback = request.GET.get('callback', None)
if ctype == 'application/json' and cback:
jsonp = '{callback}({json})'.format(callback=cback, json=response.content)
return HttpResponse(content=jsonp, mimetype='application/javascript')
return response
</code></pre>
<p>现在一切都按计划进行。谢谢!</p>