20
Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.
Tôi có một biến lưu trữ giá trị JSON. Tôi muốn base64 mã hóa nó trong Python. Nhưng lỗi 'không hỗ trợ giao diện bộ đệm' bị ném. Tôi biết rằng base64 cần một byte để chuyển đổi. Nhưng khi tôi là người mới trong Python, không biết làm thế nào để chuyển đổi JSON thành chuỗi mã hóa base64. Có một cách thẳng thắn để làm điều đó ??
Dano
87.6K13 Huy hiệu vàng216 Huy hiệu bạc213 Huy hiệu Đồng13 gold badges216 silver badges213 bronze badges
hỏi ngày 18 tháng 7 năm 2014 lúc 18:28Jul 18, 2014 at 18:28
0
Trong Python 3.x, bạn cần chuyển đổi đối tượng str
của mình thành đối tượng bytes
cho base64
để có thể mã hóa chúng. Bạn có thể làm điều đó bằng phương pháp str.encode
:
>>> import json
>>> import base64
>>> d = {"alg": "ES256"}
>>> s = json.dumps[d] # Turns your json dict into a str
>>> print[s]
{"alg": "ES256"}
>>> type[s]
>>> base64.b64encode[s]
Traceback [most recent call last]:
File "", line 1, in
File "/usr/lib/python3.2/base64.py", line 56, in b64encode
raise TypeError["expected bytes, not %s" % s.__class__.__name__]
TypeError: expected bytes, not str
>>> base64.b64encode[s.encode['utf-8']]
b'eyJhbGciOiAiRVMyNTYifQ=='
Nếu bạn chuyển đầu ra của
import json
import base64
with open['test.json'] as jsonfile:
data = json.load[jsonfile]
print[type[data]] #dict
datastr = json.dumps[data]
print[type[datastr]] #str
print[datastr]
encoded = base64.b64encode[datastr.encode['utf-8']] #1 way
print[encoded]
print[base64.encodebytes[datastr.encode[]]] #2 method
0 cho mô -đun base64
, bạn sẽ có thể mã hóa nó tốt.Đã trả lời ngày 18 tháng 7 năm 2014 lúc 18:38Jul 18, 2014 at 18:38
Danodanodano
87.6K13 Huy hiệu vàng216 Huy hiệu bạc213 Huy hiệu Đồng13 gold badges216 silver badges213 bronze badges
4
hỏi ngày 18 tháng 7 năm 2014 lúc 18:28encodestring is deprecated and suggested one to use is encodebytes
import json
import base64
with open['test.json'] as jsonfile:
data = json.load[jsonfile]
print[type[data]] #dict
datastr = json.dumps[data]
print[type[datastr]] #str
print[datastr]
encoded = base64.b64encode[datastr.encode['utf-8']] #1 way
print[encoded]
print[base64.encodebytes[datastr.encode[]]] #2 method
Trong Python 3.x, bạn cần chuyển đổi đối tượng str
của mình thành đối tượng bytes
cho base64
để có thể mã hóa chúng. Bạn có thể làm điều đó bằng phương pháp str.encode
:Jan 24, 2020 at 19:36
Nếu bạn chuyển đầu ra của
import json
import base64
with open['test.json'] as jsonfile:
data = json.load[jsonfile]
print[type[data]] #dict
datastr = json.dumps[data]
print[type[datastr]] #str
print[datastr]
encoded = base64.b64encode[datastr.encode['utf-8']] #1 way
print[encoded]
print[base64.encodebytes[datastr.encode[]]] #2 method
0 cho mô -đun base64
, bạn sẽ có thể mã hóa nó tốt.BrBĐã trả lời ngày 18 tháng 7 năm 2014 lúc 18:387 silver badges13 bronze badges
Danodano
data = '{"hello": "world"}'
enc = data.encode[] # utf-8 by default
print base64.encodestring[enc]
Dưới đây là hai phương pháp được thực hiện trên Python3 Encodestring được không dùng nữa và được đề xuất sử dụng một phương pháp là mã hóa
Đã trả lời ngày 24 tháng 1 năm 2020 lúc 19:36Jul 18, 2014 at 18:42
BRBBRBHanuman
6957 Huy hiệu bạc13 Huy hiệu đồng3 gold badges41 silver badges39 bronze badges
Bạn có thể mã hóa chuỗi trước, ví dụ như UTF-8, sau đó Base64 mã hóa nó:
import base64
def b64EncodeString[msg]:
msg_bytes = msg.encode['ascii']
base64_bytes = base64.b64encode[msg_bytes]
return base64_bytes.decode['ascii']
Điều này cũng hoạt động trong 2.7 :]Dec 21, 2020 at 13:47
gpayne_007gpayne_007gpayne_007
Đã trả lời ngày 18 tháng 7 năm 2014 lúc 18:426 silver badges7 bronze badges
Bộ chuyển đổi JSON sang Base64 trực tuyến giúp chuyển đổi Plain JSON sang Base64 và giúp tiết kiệm và chia sẻ JSON với Base64.
Bạn có thể làm gì với bộ chuyển đổi JSON sang Base64?
- Công cụ này giúp bạn chuyển đổi JSON [ký hiệu đối tượng JavaScript] của mình thành nhóm Base64 một cách dễ dàng.
- Công cụ này cho phép tải URL JSON chuyển đổi sang Base64. Nhấp vào nút URL, nhập URL và gửi.
- Công cụ này hỗ trợ tải tệp JSON để chuyển đổi thành Base64. Nhấp vào nút Tải lên và chọn Tệp.
- JSON đến Base64 trực tuyến hoạt động tốt trên Windows, Mac, Linux, Chrome, Firefox, Edge và Safari.
Ví dụ về JSON đến Base64
Json thử nó. Try it.
{ "InsuranceCompanies": { "source": "investopedia.com" } }
Base được chuyển đổi64
ewoiSW5zdXJhbmNlQ29tcGFuaWVzIjogewogICAgInNvdXJjZSI6ICJpbnZlc3RvcGVkaWEuY29tIgogICAgfQp9
Cho người dùng nâng cao
URL bên ngoài JSONTải URL bên ngoài của JSON trong URL trình duyệt như //codeBeautify.org/json-base64-converter?url=external-url nàyurl=external-url
//codebeautify.org/json-to-base64-converter?url=//gist.githubusercontent.com/cbmgit/852c2702d4342e7811c95f8ffc2f017