Python を使用して LinkPoint ゲートウェイへの接続を成功させようとしています。API に慣れていない方の.pem
ために、認証目的で使用するファイルを取得します。
このファイルを使用して、SSL 経由で安全な接続を作成するのに問題があります。
彼らの API ドキュメント (これには多くの要望が残されています) によると、構成は以下のようになるはずです。
HOST = 'secure.linkpt.net'
API_URL = 'https://secure.linkpt.net/lpc/servlet/lppay'
PORT = 1129
cert_key = my_cert_key.pem
この情報と有効なXML
文字列を使用して、この接続を作成するにはどうすればよいですか?
私はHTTP
Pythonでの接続にかなり慣れていません。POST
withを使用して、他の API との接続を正常に実装しましたurllib2
。当然のことながら、私の最初の試みは、解決策にたどり着くことができることを期待して、同様のアプローチから始まりました.
何かのようなもの:
headers = { 'User-Agent' : 'Rico',
'Content-type' : 'text/xml; charset=\"UTF-8\"',
'Content-length' : len(self.xml_string),
}
# POST to First Data (Link Point)
req = urllib2.Request(API_URL, self.xml_string, headers)
response = urllib2.urlopen(req)
self.handleResponse(response.read())
cert_key
またはについて何も提供しなかったので、これがうまくいくとはほとんど期待していませんでしたPORT
。
この試みの後、別のスタックオーバーフロー投稿の解決策から見つけたのと同様のアプローチを使用しようとしました。残念ながら、(私が知っている)ca_certs
またはファイルを持っていないため、これをうまく進めることができませんでした。cert
リクエストを使用しようとしましたが、それを理解するためのドキュメント/例が見つかりません。
Twistedも使用してみましたが、これで何かできることを本当に望んでいましたが、鉄球でドアを開けようとしているように感じます。それは私にはやり過ぎのように感じます。単純な接続/要求/応答が必要なだけです...これは非常に複雑に思えます。
私の次の試みはPycURL でしたが、このプロセス中に十分な絶望に直面したので、これに飛び込む前に誰かが良い提案を持っているかどうかを確認するためにここに来ると思いました.
これらのツールの 1 つに再度アクセスする必要があると思われる場合は、お知らせください。私はこれらのどれにも多くの時間を費やしませんでした-足を濡らすのに十分です. また、素晴らしい例や詳細なドキュメントを教えていただければ幸いです。
また、自分で接続を構築するために標準SSL
ライブラリを使用したくありません。必要がなければ、車輪を再発明したくありません。