APIを使用してデータを送信しようとしていますが、TypeErrorを取得しようとしています:バイトをstrに連結できません。これは私が理解していることは、コードの一部をバイトに変換する必要があることを意味しますが、これを行う方法がわかりません。私は前にbを追加しようとしました、またはバイト( 'データ')を使用していましたが、それらを間違った領域に置いているかもしれません。TypeError:strにバイトを連結できないときにバイトに変換する方法
import http.client
conn = http.client.HTTPSConnection("exampleurl.com")
payload = {
'FilterId': "63G8Tg4LWfWjW84Qy0usld5i0f",
'name': "Test",
'description': "Test1",
'deadline': "2017-12-31",
'exclusionRuleName': "Exclude",
'disable': "true",
'type': "Type1"
}
headers = {
'content-type': "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW",
'x-csrf-token': "wWjeFkMcbopci1TK2cibZ2hczI",
'cache-control': "no-cache",
'postman-token': "23c09c76-3b030-eea1-e16ffd48e9"
}
conn.request("POST", "/api/campaign/create", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
これは、問題の行である:私は何を、どのようにバイトに変換するか不明だ
conn.request("POST", "/api/campaign/create", payload, headers)
。
代わりに 'requests'モジュールを使うのはなぜですか? –
これを使用しようとすると、「ssl.SSLError:[SSL:CERTIFICATE_VERIFY_FAILED]」というエラーが表示されます。この問題はそれよりも解決しやすいと考えました。 – nvachhan
@nvachhan:https://exampleurl.comのサーバーに有効なSSL証明書がありません。私の答えに示されているように、HTTPだけでテストしたり、[httpbin.org](http://httpbin.org)を試してみてください。さらに良い方法として、 'requests'を提案してください。 – mhawke