|
@@ -33,7 +33,7 @@ namespace B2Uploader
|
33
|
33
|
|
34
|
34
|
foreach(string s in Directory.GetFiles(args[2]))
|
35
|
35
|
{
|
36
|
|
- var uploadURL = GetUploadURL(new GetUploadURLRequest { bucketId = bucket.bucketId }, auth.authorizationToken, auth.apiUrl);
|
|
36
|
+ var uploadURL = GetUploadURL(new GetUploadURLRequest { bucketId = bucket.bucketId }, auth.apiUrl, auth.authorizationToken);
|
37
|
37
|
var response = UploadFile(uploadURL.authorizationToken, "b2/x-auto", s, uploadURL.uploadUrl);
|
38
|
38
|
}
|
39
|
39
|
|
|
@@ -96,11 +96,10 @@ namespace B2Uploader
|
96
|
96
|
|
97
|
97
|
static UploadFileResponse UploadFile(string authToken, string contentType, string filePath, string uploadUrl)
|
98
|
98
|
{
|
99
|
|
- SHA1 sha = SHA1.Create();
|
100
|
99
|
|
101
|
100
|
byte[] bytes = File.ReadAllBytes(filePath);
|
102
|
101
|
|
103
|
|
- String sha1 = ASCIIEncoding.ASCII.GetString(sha.ComputeHash(bytes));
|
|
102
|
+ String sha1 = GetSha1(bytes);
|
104
|
103
|
|
105
|
104
|
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(uploadUrl);
|
106
|
105
|
webRequest.Method = "POST";
|
|
@@ -129,6 +128,22 @@ namespace B2Uploader
|
129
|
128
|
return null;
|
130
|
129
|
}
|
131
|
130
|
}
|
|
131
|
+
|
|
132
|
+ private static string GetSha1(byte[] bytes)
|
|
133
|
+ {
|
|
134
|
+ using (SHA1Managed sha1 = new SHA1Managed())
|
|
135
|
+ {
|
|
136
|
+ var hash = sha1.ComputeHash(bytes);
|
|
137
|
+ var sb = new StringBuilder(hash.Length * 2);
|
|
138
|
+
|
|
139
|
+ foreach (byte b in hash)
|
|
140
|
+ {
|
|
141
|
+ // can be "x2" if you want lowercase
|
|
142
|
+ sb.Append(b.ToString("X2"));
|
|
143
|
+ }
|
|
144
|
+ return sb.ToString();
|
|
145
|
+ }
|
|
146
|
+ }
|
132
|
147
|
}
|
133
|
148
|
|
134
|
149
|
public class AuthorizeResponse
|