性能魔方系统文档

功能说明

本服务的主要功能为:在不改变用户视觉体验的情况下,通过图片优化算法或者转换图片格式将图片大小压缩至最小,同时将图片通过全球300+优质CDN节点进行网络加速,用户只需将加速后的图片地址引入页面即可马上提升互联网用户的访问速度体验。

API使用说明

本服务提供了Web API接口,开发者可以使用自己熟悉的语言,在Web应用或者客户端程序中方便的调用。下面具体介绍下服务的调用方法及样例:

申请API Token

登陆 http://www.mmtrix.com 并注册账号,在“个人中心”的“接口管理”中生成服务accesskey和securekey。

api使用方法

创建bucket

http请求路径

http://api.mmtrix.com/v1/bucket/create

http请求方法

POST

参数名 含义
bucketname 需要创建的bucket空间名字
ak 申请到的accesskey
sign accesskey,bucketname,securekey参数连接后的md5值
http返回内容

请求返回内容为JSON,格式如下:

{
    "code": 0,                  //返回状态码
    "msg": ""                   //返回错误消息
}
状态码对应表
状态码 含义
0 成功
1 参数错误
2 服务端错误
99999 API调用次数超过限额
样例

curl版本

http请求

#!/bin/bash
URL="http://api.mmtrix.com/v1/bucket/create"
AK="fe8dc959e7f9fa5de6dab87bb9b7d8ca"
BUCKETNAME="mybucket"
SK="e5828c564f71fea3a12dde8bd5d27063"
MD5=`echo -n "ak=${AK}&bucketname=${BUCKETNAME}&sk=${SK}"|md5sum|awk '{print $1}'` 
curl -X POST -L "${URL}?ak=${AK}&bucketname=${BUCKETNAME}&sign=${MD5}"
exit $?

http返回

{
       "code": 0,                  
       "msg": ""                   
}

列举bucket

http请求路径

http://api.mmtrix.com/v1/bucket/list

http请求方法

GET

参数名 含义
ak 申请到的accesskey
sign accesskey与securekey参数连接后的md5值
http返回内容

请求返回内容为JSON,格式如下:

{
    "buckets": [
                    {
                         "bucket_name": xxx,          //bucket名字
                         "create_time": xxx,          //bucket创建时间
                         "used_capacity": xxx,        //bucket已用容量
                         "total_capacity": xxx,       //bucket总共容量
                         "object_num":xxx             //bucket下object数量
                    },
                    ...
               ],               //列举用户所有的bucket
    "code": 0,                  //返回状态码
    "msg": ""                   //返回错误消息
}
状态码对应表
状态码 含义
0 成功
1 参数错误
2 服务端错误
99999 API调用次数超过限额
样例

curl版本

http请求

#!/bin/bash
URL="http://api.mmtrix.com/v1/bucket/list"
AK="fe8dc959e7f9fa5de6dab87bb9b7d8ca"
SK="e5828c564f71fea3a12dde8bd5d27063"
MD5=`echo -n "ak=${AK}&sk=${SK}"|md5sum|awk '{print $1}'` 
curl "${URL}?ak=${AK}&sign=${MD5}" 
exit $?

http返回

{
        "buckets": [
                        {
                            "bucket_name": "mybucket",
                            "create_time": "2015-01-20 10:25:08",
                            "used_capacity": 0,
                            "total_capacity": 1048576,
                            "object_num": 5
                        },
                        {
                            "bucket_name": "mybucket3",
                            "create_time": "2015-01-20 12:26:08",
                            "used_capacity": 0,
                            "total_capacity": 1048576,
                            "object_num": 0
                        },
                        {
                            "bucket_name": "mybucket4",
                            "create_time": "2015-01-20 12:26:20",
                            "used_capacity": 0,
                            "total_capacity": 1048576,
                            "object_num": 0
                        }
                   ],
        "code": 0,
        "msg": ""
}

删除bucket

http请求路径

http://api.mmtrix.com/v1/bucket/delete

http请求方法

DELETE

参数名 含义
bucketname 需要删除的空间的名字
ak 申请到的accesskey
sign accesskey,bucketname,securekey参数连接后的md5值
http返回内容

请求返回内容为JSON,格式如下:

{
    "code": 0,                  //返回状态码
    "msg": ""                   //返回错误消息
}
状态码对应表
状态码 含义
0 成功
1 参数错误
2 服务端错误
99999 API调用次数超过限额
样例

curl版本

http请求

#!/bin/bash
URL="http://api.mmtrix.com/v1/bucket/delete"
AK="fe8dc959e7f9fa5de6dab87bb9b7d8ca"
SK="e5828c564f71fea3a12dde8bd5d27063"
BUCKETNAME="mybucket"
MD5=`echo -n "ak=${AK}&bucketname=${BUCKETNAME}&sk=${SK}"|md5sum|awk '{print $1}'` 
curl -v -X DELETE "${URL}?ak=${AK}&bucketname=${BUCKETNAME}&sign=${MD5}" 
exit $?

http返回

{
        "code": 0,
        "msg": ""
}

上传object

http请求路径

http://api.mmtrix.com/v1/object/upload

http请求方法

POST

请求参数

参数名 含义
file 需要进行压缩的文件内容
bucketname 已经创建的bucket名字
ak 申请到的accesskey
sign acesskey,bucketname与securekey拼接后的MD5值
http返回内容

请求返回内容为JSON,格式如下:

{
    "object_name": "",         //上传的object名字 
    "object_path": "",      //加速成功的object的访问URL
    "code": 0,              //状态码    
    "msg": ""               //错误消息    
}
状态码对应表
状态码 含义
0 成功
1 参数错误
2 服务端错误
99999 API调用次数超过限额
样例

curl版本

http请求

#!/bin/bash
URL="http://api.mmtrix.com/v1/object/upload"
FILE_PATH="../img/test.jpg"
FILE_NAME="test.jpg"
AK="fe8dc959e7f9fa5de6dab87bb9b7d8ca"
SK="e5828c564f71fea3a12dde8bd5d27063"
BUCKETNAME="mybucket"
MD5=`echo -n "ak=${AK}&bucketname=${BUCKETNAME}&sk=${SK}"|md5sum|awk '{print $1}'`
curl -L "${URL}?ak=${AK}&bucketname=${BUCKETNAME}&sign=${MD5}" -F "file=@${FILE_PATH};filename=${FILE_NAME}"
exit $?

http返回

{
       "object_name": "test.jpg",     
       "object_path": "http://static.mmtrix.com:8011/static/11/test.jpg",
       "code": 0,
       "msg": ""
}

列举object

http请求路径

http://api.mmtrix.com/v1/object/list

http请求方法

GET

请求参数

参数名 含义
bucketname 需要列举所有object的bucket空间名字
ak 申请到的accesskey
sign accesskey,bucketname,securekey拼接后的MD5值
http返回内容

请求返回内容为JSON,格式如下:

{
    "objects": [
                   {
                     "object_name": xxx,               //上传的图片名
                     "object_url": xxx,                //加速后的图片URL
                     "object_createtime": xxx,         //图片加速时间
                     "object_orisize": xxx,            //图片优化前大小
                     "object_optsize": xxx             //图片优化后大小
                   }
               ],
    "code": 0,              //状态码    
    "msg": ""               //错误消息    
}
状态码对应表
状态码 含义
0 成功
1 参数错误
2 服务端错误
99999 API调用次数超过限额
样例

curl版本

http请求

#!/bin/bash
URL="http://api.mmtrix.com/v1/object/list"
ACCESSKEY="fe8dc959e7f9fa5de6dab87bb9b7d8ca"
SECUREKEY="e5828c564f71fea3a12dde8bd5d27063"
BUCKETNAME="mybucket"
MD5=`echo -n "ak=${ACCESSKEY}&bucketname=${BUCKETNAME}&sk=${SECUREKEY}"|md5sum|awk '{print $1}'` 
curl "${URL}?ak=${AK}&bucketname=${BUCKETNAME}&sign=${MD5}" 
exit $?

http返回

{
    "objects": [
                    {
                      "object_name": "1_13b870be5468ad441773408ac19d359e.jpg",
                      "object_url": "http://static.mmtrix.com:8011/static/11/1_13b870be5468ad441773408ac19d359e.jpg",
                      "object_createtime": "2015-04-21 21:19:55",
                      "object_orisize": 665116,
                      "object_optsize": 482015
                    },
                    {
                      "object_name": "0_13b870be5468ad441773408ac19d359e.jpg",
                      "object_url": "http://static.mmtrix.com:8011/static/11/0_13b870be5468ad441773408ac19d359e.jpg",
                      "object_createtime": "2015-04-21 20:50:20",
                      "object_orisize": 665116,
                      "object_optsize": 482015
                    },
                    {
                      "object_name": "13b870be5468ad441773408ac19d359e.jpg",
                      "object_url": "http://static.mmtrix.com:8011/static/11/13b870be5468ad441773408ac19d359e.jpg",
                      "object_createtime": "2015-04-21 20:31:31",
                      "object_orisize": 665116,
                      "object_optsize": 482015
                    }
             ],
    "code": 0,                  
    "msg": ""                   
}

删除object

http请求路径

http://api.mmtrix.com/v1/object/delete

http请求方法

DELETE

参数名 含义
bucketname 需要删除的object所属的空间的名字
objectname 需要删除的object的名字
ak 申请到的accesskey
sign accesskey,bucketname,objectname,securekey参数连接后的md5值
http返回内容

请求返回内容为JSON,格式如下:

{
    "code": 0,                  //返回状态码
    "msg": ""                   //返回错误消息
}
状态码对应表
状态码 含义
0 成功
1 参数错误
2 服务端错误
99999 API调用次数超过限额
样例

curl版本

http请求

#!/bin/bash
URL="http://api.mmtrix.com/v1/object/delete"
AK="fe8dc959e7f9fa5de6dab87bb9b7d8ca"
SK="e5828c564f71fea3a12dde8bd5d27063"
BUCKETNAME="mybucket"
OBJECTNAME="test.jpg"
MD5=`echo -n "ak=${AK}&bucketname=${BUCKETNAME}&objectname=${OBJECTNAME}&sk=${SK}"|md5sum|awk '{print $1}'` 
curl -v -X DELETE "${URL}?ak=${AK}&bucketname=${BUCKETNAME}&objectname=${OBJECTNAME}&sign=${MD5}" 
exit $?

http返回

{
        "code": 0,
        "msg": ""
}