Python 如何将数据从一个Django应用程序发送到另一个?

Python 如何将数据从一个Django应用程序发送到另一个?,python,html,django,Python,Html,Django,这是我的问题。我需要将表格从一个Django应用程序发送到另一个(在不同的机器上)。考虑到换行,这就是我发布数据的方式 <form id="codeid" method="post" enctype="application/x-www-form-urlencoded" name="code" action="192.168.56.2:8000/api/comp/"> <input id="textarea_1" name="content" cols="80" row

这是我的问题。我需要将表格从一个Django应用程序发送到另一个(在不同的机器上)。考虑到换行,这就是我发布数据的方式

<form id="codeid" method="post" enctype="application/x-www-form-urlencoded" name="code" action="192.168.56.2:8000/api/comp/">
    <input id="textarea_1" name="content" cols="80" rows="15"></input>
    <input id="thebutton" type="button" value="Submit"  onclick="document.forms.codeid.submit();" /> 
</form>
在views.py中,我不知道要写什么才能将表单发送到其他应用程序。我试图从表单中提取数据,并将其与URL一起发送,如下所示:

data=request.POST['content']
redirect('http://192.168.56.2:8000/api/comp/'+data)
url = urllib2.urlopen('http://192.168.56.2:8000/api/comp/'+data)
tml = url.read()
encoded_data = urllib.urlencode({'content': 'Hello,\nIt is a sample content!'})
url = urllib2.urlopen('http://192.168.56.2:8000/api/comp/?' + encoded_data)

但是我输了换行

我认为您可以以更好的方式发送数据,例如使用HTML表单直接将数据发送到目标服务器,等等

无论如何,您将数据与
urllib2.urlopen
行中的URL混合的方法非常糟糕,当然,您将丢失换行符和许多其他字符。您应该在将数据添加到URL之前对其进行编码,如下所示:

data=request.POST['content']
redirect('http://192.168.56.2:8000/api/comp/'+data)
url = urllib2.urlopen('http://192.168.56.2:8000/api/comp/'+data)
tml = url.read()
encoded_data = urllib.urlencode({'content': 'Hello,\nIt is a sample content!'})
url = urllib2.urlopen('http://192.168.56.2:8000/api/comp/?' + encoded_data)

192.168.56.2:8000
是承载网页的机器还是您试图将数据发送到的服务器?您能否将数据从HTML直接发送到第二个应用程序<代码>操作=”http://192.168.56.2:8000/api/comp/“yes 192.168.56.2:8000是我试图发送数据的地方,但它被视为一个静态ip,因此我使用urllib2.urlopen(url)在views.py文件中发送数据谢谢您的快速回答。当我直接从html发送数据时,我会遇到静态url问题。我想更好的方法是对数据进行编码,但是如果不自己编写数据,我怎么做呢?因为数据是由客户端写入文本区域的。您不需要自己添加
\n
,如果用户在其输入中按了
,则一切都会正常,因为您之前没有编码数据,所以没有换行符。