Android Studio中Marvel API密钥的使用

pjngdqdw  于 8个月前  发布在  Android
关注(0)|答案(3)|浏览(113)

有人可以告诉,如何使用Marvel API键在***Android Studio***用于构建应用程序.我没有找到一篇文章可以告诉如何在Android Studio中使用Marvel API密钥。

pgvzfuti

pgvzfuti1#

很简单:

1.从https://developer.marvel.com/account获取Marvel API密钥(公共和私有)
1.现在你需要一个哈希键来发出请求:

  • 您需要一个ts值(例如1)
  • 生成md5连接(ts +私钥+公钥)

1.现在,您可以尝试在浏览器中调用https://gateway.marvel.com/v1/public/characters?apikey=$MARVEL_API_PUBLIC_KEY&ts=$MARVEL_API_TS&hash=$MARVEL_API_HASH
举例来说:私密密钥:qqqq公钥:wwww ts:1 ->在这里你可以选择你想要的值
1.进入http://www.md5.cz/,输入qqqwwww 1,生成md5 -> result:30db1167f72b3ff7acbbd14df4c1f878
1.现在,从浏览器中,您可以尝试:https://gateway.marvel.com/v1/public/characters?apikey=wwww&ts=1&hash=30db1167f72b3ff7acbbd14df4c1f878
如果你正在编写一个Android应用程序,你可以在这里找到一个例子:https://github.com/yelotmany/Marvel-Characters

yzxexxkh

yzxexxkh2#

服务端应用除了apikey参数外,还必须传递两个参数

ts -一个时间戳(或其他长字符串,可以在请求的基础上更改)
hash -ts参数的md5摘要,您的私钥和公钥(例如md5(ts+privateKey+publicKey)

l3zydbqr

l3zydbqr3#

在我的情况下,我使用了错误的API地址,即“developer.marvel.com”
更改为'gateway.marvel.com'
Kotlin中如何生成Marvel API Hash的示例:

val timestamp = System.currentTimeMillis().toString()
    generateApiHash(timestamp)
    
    private fun generateApiHash(timestamp: String) =
            HASH_FORMAT.format(timestamp, API_PRIVATE_KEY, API_PUBLIC_KEY).toMD5()
    
    private const val API_PUBLIC_KEY = BuildConfig.MARVEL_API_KEY_PUBLIC
    private const val API_PRIVATE_KEY = BuildConfig.MARVEL_API_KEY_PRIVATE
    private const val HASH_FORMAT = "%s%s%s"

相关问题