Marvel API 密钥在 Android Studio 中的使用

问题描述 投票:0回答:3

有人可以告诉我如何使用 android studio 中的 Marvel API 密钥来构建应用程序吗?我没有找到一篇文章可以讲述如何在 android studio 中使用 Marvel API 密钥。

java android-studio api-key
3个回答
3
投票

很简单:

  1. https://developer.marvel.com/account

    获取 Marvel Api 密钥(公共和私有)
  2. 现在你需要一个哈希键来发出请求:

  • 您将需要一个 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/ 并输入 qqqqwwww1 生成 md5 -> 结果 : 30db1167f72b3ff7acbbd14df4c1f878
  2. 现在,您可以在浏览器中尝试: https://gateway.marvel.com/v1/public/characters?apikey=wwww&ts=1&hash=30db1167f72b3ff7acbbd14df4c1f878

如果您正在编写Android应用程序,您可以在这里找到一个示例:https://github.com/yelotmany/Marvel-Characters


2
投票

服务器端应用程序除了apikey参数之外还必须传递两个参数

ts - 时间戳(或其他可以根据请求进行更改的长字符串)

hash - ts 参数、您的私钥和公钥的 md5 摘要(例如 md5(ts+privateKey+publicKey)


0
投票

就我而言,我使用了错误的 API 地址,即“https://developer.marvel.com”

更改为“https://gateway.marvel.com”

如何在 kotlin 中生成 Marvel API 哈希的示例:

    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"
© www.soinside.com 2019 - 2024. All rights reserved.