Ajax Django:是否可以创建Json并将其从一个视图发送到另一个服务器?

Ajax Django:是否可以创建Json并将其从一个视图发送到另一个服务器?,ajax,django,json,django-views,query-string,Ajax,Django,Json,Django Views,Query String,如果我有这样一个链接,指向我自己服务器内的视图,有没有办法将json对象(可能只是使用ajax?)发送到另一个外部服务器并检索答案?大概是这样的: from django.shortcuts import render def profile(request): #send a json object to another server like http://www.myotherserver.com/user #get the answer and process it

如果我有这样一个链接,
指向我自己服务器内的视图,有没有办法将json对象(可能只是使用ajax?)发送到另一个外部服务器并检索答案?大概是这样的:

from django.shortcuts import render

def profile(request):
   #send a json object to another server like http://www.myotherserver.com/user
   #get the answer and process it
   return render(request, 'accounts/profile.html' , 
                {'profile_user': data_from_the_external_server})
以上我当然可以用jQueryAjax实现,但我只是想知道我是否可以这样做


提前感谢。

如果需要将HTTP数据(通过POST或GET)发送到另一台服务器并从视图中接收结果,可以使用Python库。不过,有一个名为的更简单的第三方库可以为您处理此任务。

当然可以。为什么不可能呢

如果没有必要,不要用AJAX编写代码

您需要做两件事,准备好要发送的JSon,然后将其发送到所需的API:

  • 查看“simplejson”以创建要发送的json数据
  • 查看“urllib”向Python中的另一台服务器发送请求(如下所示:)
  • 也不要把它直接放在你的视野中。为它创建一个新类。所以在你看来,你会有这样的想法:

    def profile(request):
        # instantiate your service here (better with DI)
    
        profile_user = my_service.get_profile_user()
        return render(
            request, 
            'accounts/profile.html' , 
            {
                'profile_user': profile_user
            }
        )