0

这是我尝试验证我的 API 时得到的结果。

Content-Type: application/json
Vary: Accept

{
    "valid": false,
    "token_uri": "https://mining4btc.com/NFT/rinkeby/CKE/1",
    "errors": [
        "InvalidTokenUrlResponseException: Invalid response, expected 200 but got 406 for URL: https://mining4btc.com/NFT/rinkeby/CKE/1"
    ]
}

我正在使用它来验证我的 API: https ://testnets-api.opensea.io/asset/0xe8dD349E3B0F0FA0eE063a2D99541155aFEf14B9/1/validate/

如您所见,它得到了一个 406 代码。

这是 API:

<?php
header('Content-Type: application/json');

$output = '{
  "attributes": [
    {
      "trait_type": "Eyes", 
      "value": "cute"
    }, 
    {
      "trait_type": "Nose", 
      "value": "cute"
    }, 
    {
      "trait_type": "Cheeks", 
      "value": "cute"
    }, 
    {
      "trait_type": "Toes", 
      "value": "cute"
    }, 
    {
      "trait_type": "Ability", 
      "value": "chairs"
    }, 
    {
      "display_type": "boost_number", 
      "trait_type": "Cuteness", 
      "value": 5000
    }, 
    {
      "display_type": "number", 
      "trait_type": "Age", 
      "value": 1
    }
  ], 
  "description": "Thinking about my Mommy.", 
  "external_url": "https://mining4btc.com/NFT/rinkeby/CKE/external", 
  "image": "https://mining4btc.com/NFT/rinkeby/CKE/proof/1.jpg", 
  "name": "Chillin"
}';

$decoded = json_decode($output);
echo json_encode($decoded);

?>

这是一个遵循 OpenSea 文档的 NFT 合约 API;与 Truffle 一起部署到 rinkeby。

4

1 回答 1

2

我已经确认这是因为 Bluehost 主动阻止(通过返回此代码)带有 Accept:application/json 标头的请求。您必须联系 Bluehost 并要求他们将您希望能够访问元数据的 IP 地址列入白名单。

据我所知,他们这样做是因为他们想推动人们为 VPS 付费,因为他们假设这种请求会发送到某种需要大量后端处理的强大 API。

于 2021-05-06T22:51:30.100 回答