2

我正在尝试加密 url 请求、用户名和密码,然后将其发布到网页。

但是由于某种原因,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
  • 令牌“更新”的语法错误,此令牌后应有标识符
  • 令牌上的语法错误,应改为 AnnotationName
  • 令牌“,”的语法错误,@预期
  • 令牌“,”的语法错误,@预期
4

1 回答 1

1

这是一个神秘的错误。但我会说你没有为 update() 使用正确的参数

http://developer.android.com/reference/java/security/MessageDigest.html

API 显示 update(ByteBuffer)、update(byte[], int, int)、update(byte[])、update(byte)。看不到任何需要 (byte[], byte[], byte[]) 尝试调用

md.update(fixturesFeedURL.getBytes("UTF-8"));

md.update(apiKey.getBytes("UTF-8"));

md.update(apiUser.getBytes("UTF-8"));

反而

于 2012-04-16T22:10:23.593 回答