我正在尝试加密网址请求,用户名和密码,然后将其发布到网页。
但是出于某种原因,eclipse说语法错了,我做错了什么?
它位于底部,表示md.update
导致错误。
到目前为止,这是我的代码:
private static final String apiKey = "38m8nyev284nddci49940303094";
private static final String apiUser = "esdt34ds";
long unixTimeStamp = System.currentTimeMillis() / 1000L;
String newFeedRequest = "1.0/evoStructure?timestamp=" + unixTimeStamp;
String fixturesFeedURL = "https://secure.website.com/_services/api/" + newFeedRequest;
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update(fixturesFeedURL.getBytes("UTF-8"),apiKey.getBytes("UTF-8"),apiUser.getBytes("UTF-8")); // Change this to "UTF-16" if needed
byte[] digest = md.digest();
以下是我遇到的错误:
此行有多个标记
- 语法错误,插入“Type VariableDeclaratorId”以完成FormalParameterList
- 令牌“update”上的语法错误,此令牌后预期的标识符
- 令牌上的语法错误,而是预期的注释名称
- 令牌“,”,@ expected
上的语法错误- 令牌“,”,@ expected
上的语法错误
答案 0 :(得分:1)
这是一个神秘的错误。但我要说你没有使用update()
的正确参数http://developer.android.com/reference/java/security/MessageDigest.html
API显示更新(ByteBuffer),更新(byte [],int,int),更新(byte []),更新(字节)。看不到任何内容(byte [],byte [],byte [])尝试调用
md.update(fixturesFeedURL.getBytes("UTF-8"));
md.update(apiKey.getBytes("UTF-8"));
md.update(apiUser.getBytes("UTF-8"));
代替