1 回答

TA貢獻(xiàn)1836條經(jīng)驗 獲得超4個贊
僅僅是因為產(chǎn)生這些 base64 字符串的 2 個 JSON 源文本具有不同的縮進(jìn)和不同的內(nèi)容,如下所示(它們不等于逐個字符)。
解碼這兩個 base64 字符串,您將看到差異。你可以用一個程序(不一定是 Go)來做到這一點,或者簡單地使用像這樣的在線服務(wù)。
您不應(yīng)該擔(dān)心縮進(jìn),這在 JSON 中無關(guān)緊要。但是,當(dāng)您使用 Base64 對文本進(jìn)行編碼時,會對源的所有字符進(jìn)行編碼,包括用于縮進(jìn)的空格和制表符,因此不同的縮進(jìn)將導(dǎo)致不同的 Base64 編碼形式。
但是對比2個解碼的JSON,還有其他的不同:
第一:
"expiration": "2013-08-06T12:00:00.000Z"
"success_action_redirect": "http://acl6.s3.amazonaws.com/successful_upload.html"
第二個:
"expiration": "2013-08-07T12:00:00.000Z"
"success_action_redirect": "http://examplebucket.s3.amazonaws.com/successful_upload.html"
完整解碼的 JSON 文本:
第一個:
{
"expiration": "2013-08-06T12:00:00.000Z",
"conditions": [
{"bucket": "examplebucket"},
["starts-with", "$key", "user/user1/"],
{"acl": "public-read"},
{"success_action_redirect": "http://acl6.s3.amazonaws.com/successful_upload.html"},
["starts-with", "$Content-Type", "image/"],
{"x-amz-meta-uuid": "14365123651274"},
["starts-with", "$x-amz-meta-tag", ""],
{"x-amz-credential":"AKIAIOSFODNN7EXAMPLE/20130806/us-east-1/s3/aws4_request"},
{"x-amz-algorithm": "AWS4-HMAC-SHA256"},
{"x-amz-date": "20130806T000000Z" }
]
}
第二個:
{ "expiration": "2013-08-07T12:00:00.000Z",
"conditions": [
{"bucket": "examplebucket"},
["starts-with", "$key", "user/user1/"],
{"acl": "public-read"},
{"success_action_redirect": "http://examplebucket.s3.amazonaws.com/successful_upload.html"},
["starts-with", "$Content-Type", "image/"],
{"x-amz-meta-uuid": "14365123651274"},
["starts-with", "$x-amz-meta-tag", ""],
{"x-amz-credential": "AKIAIOSFODNN7EXAMPLE/20130806/us-east-1/s3/aws4_request"},
{"x-amz-algorithm": "AWS4-HMAC-SHA256"},
{"x-amz-date": "20130806T000000Z" }
]
}
- 1 回答
- 0 關(guān)注
- 236 瀏覽
添加回答
舉報