3

私はこの問題で立ち往生しています。答えは簡単かもしれませんが、私の一生の間、私はそれを理解することができません。

これが私の非常に単純なjspファイルです。

<%@page contentType="text/plain" 
import="java.util.*" 
import="subscriberapi.SubscriberAPI"
pageEncoding="UTF-8"%>
<%!private String Check(String jsonText)
{
    SubscriberAPI subscriberAPI = new SubscriberAPI();
    return subscriberAPI.Check(jsonText);
}%>
<%response.setContentType("text/plain");
response.setHeader("Cache-Control", "no-cache");
response.setHeader("pragma","no-cache");%>
<%=Check(request.getParameter("jsonText"))%>

出力を次のようにしたいと思います。

{"Status":true,"Message":"All good"}

しかし、私が得る出力は次のとおりです。

<html>
<head></head>
<body>
<pre style="word-wrap: break-word; white-space: pre-wrap;">{"Status":true,"Message":"All good"}</pre>
</body>
</html>

ブラウザでは正しいように見えますが、実際の応答は、htmlを必要としない別のプロセスに送られます。

応答の周りのhtmlビルドを取り除くにはどうすればよいですか?これはGlassfishによって設定されていますか?

4

2 に答える 2

5

:blush:エピックは失敗します!

GoogleChromeにtext/plainが表示されると、(上記のように)htmlでラップされます。私はそのような初心者の開発者のように感じます。他のブラウザでチェックしたり、テストアプリを作成したりする必要がありました。いずれにせよ、私はBalusCのアドバイスに従い、サーブレットを作成しました

于 2011-01-21T11:20:38.927 に答える
-1

どのWebコンテナを使用していますか?ApacheTomcat6.24でこれを試しました。ハードコードされたjson文字列を返すようにメソッドを変更しました。出力の周りにhtmlマークアップがなくても問題なく動作しました。

リクエストパラメータを調べて、SubscriberAPI::Checkメソッドが実行していることを確認します

于 2011-01-20T10:31:08.663 に答える