【问题标题】:Send data from Python to .jsp将数据从 Python 发送到 .jsp
【发布时间】:2017-05-30 06:58:06
【问题描述】:

我有以下问题:

我在我的树莓派 3 中使用 python 来获取一些数据。我想将此数据发送到 .jsp(java 服务器页面)。我尝试使用 Requests python 库,但每当我运行它时,它都会打印:(500, 'Internal Server error')。

这是python脚本中使用的代码:

if AP1snr>=E1liAP1 and AP1snr<=E1lsAP1:
    if (AP2snr>=E1liAP2 and AP2snr<=E1lsAP2):
        if (AP3snr>=E1liAP3 and AP3snr<=E1lsAP3):
            if (AP4snr>=E1liAP4 and AP4snr<=E1lsAP4):
                a=101;
                ban=1;
if ban==1:
    r = 
    requests.post("http://mywebsite.com/localizador.jsp", 
    data={'number': a, 'type': 'issue', 'action': 'show'})
    print(r.status_code, r.reason)

这是我的jsp中的代码,用于显示我发送的数据:

<%
        if( request.getAttribute("salon")!=null){
        Localizador localizador=request.getAttribute("Salon");
        %>      
      <tr><td><%=localizador.getNombresalon()%> </td> </tr>
     <%      
      }
   }
%>

最后是我的 servlet 的代码,我打算将数据存储为变量并使其成为页面中的属性:

try { 
   String salon = request.getParameter("a");
   localizador localizador= new localizador();

    localizador.setNombresalon(salon);
    request.setAttribute("salon",localizador);


    } catch (Exception ex) {
        Logger.getLogger(localizadorControlador.class.getName()).log(Level.SEVERE, null, ex);
    }
RequestDispatcher redireccion = 
request.getRequestDispatcher("localizador.jsp");
    redireccion.forward(request, response);

【问题讨论】:

  • 显然你知道如何在 java 中使用记录器。你为什么不看一下日志文件的实际内容?

标签: python html jsp post get


【解决方案1】:

当提供数据参数时,HTTP 请求将是 POST 而不是 GET。试试这个

import urllib
import urllib2

params = urllib.urlencode({'hello':'there', 'foo': 'bar'})
urllib2.urlopen('http://example.com/test.jsp?+params')

【讨论】:

  • 我尝试使用此代码但它不起作用,我正在使用 requests.post 所以我不知道你为什么说我需要使用 post 而不是 get?我错过了什么吗?
猜你喜欢
  • 1970-01-01
  • 2013-05-27
  • 2014-07-21
  • 1970-01-01
  • 1970-01-01
  • 2019-01-07
  • 2017-10-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多