1

サンプルサーバー

以下に示すように、パーミッションが 775 に設定された /var/www/cgi-bin フォルダーにコピーされた Python スクリプトがあります。

#!/usr/bin/env python

 print "Content-type: text/plain\n\n";
print "testing...\n";

import cgitb; cgitb.enable()
import cgi

from jsonrpc import handleCGI, ServiceMethod
import json
from datetime import datetime

@ServiceMethod
def echo():
    return "Hello"

if __name__ == "__main__":
    handleCGI()

サンプル クライアント

現在、以下のクライアント コードを使用して、この単純なエコー サービスにアクセスしています。

from jsonrpc import ServiceProxy
import json

s = ServiceProxy(`"http://localhost/cgi-bin/t2.py"`)
print s.echo()

1/ 上記のクライアントを実行すると、以下のエラーが発生します。何かご意見は?2/ httpd.conf の設定に問題はありますか?

File "/usr/lib/python2.7/site-packages/jsonrpc/proxy.py", line 43, in __call__
    resp = loads(respdata)
  File "/usr/lib/python2.7/site-packages/jsonrpc/json.py", line 211, in loads
    raise JSONDecodeException('Expected []{}," or Number, Null, False or True')
jsonrpc.json.JSONDecodeException: Expected []{}," or Number, Null, False or True

注: Iam は、json を処理する cgi の方法を使用して、以下のリンクで言及されている例を使用しています。

http://json-rpc.org/wiki/python-json-rpc

私にお知らせください。

ありがとう!サントッシュ

4

1 に答える 1

0

これは非常に遅いことはわかっていますが、同じ問題が発生したときにこの質問を見つけました。それが他の誰かに役立つことを願って、私は自分の解決策を投稿します。

私の場合、pythonファイル自体を実行可能にするのと同じくらい簡単(ばかげた)でした。つまり、chmod 755 t2.py

于 2015-04-16T14:00:48.567 に答える