前端 /api

认证

验证码 GET /captcha

request: null

response:

  • 1分钟内有效

{
    "code": 0,
    "data": {
        "sensitive": false,
        "key": "$2y$10$4ie3ffQC.efz7TAkOK0EJSeEpDT/AGjEkSuQ9vdqaeQLKsHtnC4dq6",
        "img": "data:image/png;base64,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"
    }
}


短信验证码 POST /phone_captcha

request:

参数类型必填描述
Body:
phonestring手机号

response:

{
    "code": 0,
    "data": 1
}


注册 POST /register

request:

  • 短信验证码为:666666

参数类型必填描述
Body:
phonestring手机号
passwordstring密码
phone_captchastring短信验证码

response:

{
    "code": 0,
    "data": true
}


登录 POST /login

request:

参数类型必填描述
Body:
phonestring手机号
passwordstring密码
captchastring验证码
captcha_keystring验证码key

response:

{
    "code": 0,
    "data": {
        "access_token": "eyJ0eXAiOiJKVFDSFSDF34ciOFDSF343iJ9.eyJpc3MiOiJodHRwOlwvXC9sb2NhbC5waHAuY29tXC9hcGlcL2FkbWluXC9sb2dpbiIsImlhdCI6MTU3Mjg3MzMyMywiZXhwIjoxNTcyODc2OTIzLCJuYmYiOjE1NzI4NzMzMjMsImp0aSI6ImhXNG9ZdzBDakNyVmZ4UlEiLCJzdWIiOjEsInBydiI6ImRmODgzZGI5N2JkMDVlZjhmZjg1MDgyZDY4NmM0NWU4MzJlNTkzYTkifQ.B3k3EnawgMfo2QdWO3fDCJcqP7hldpJLRdqIpczftZo",
        "token_type": "bearer",
        "expires_in": 3600
    }
}


获取用户信息 GET /user

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": {
        "id": 1,
        "phone": "15888888888",
        "created_at": "2029-12-09 20:12:22"
    }
}


登出 POST /logout

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "message": "Successfully logged out"
}


刷新token POST /refresh

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": {
        "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciWEW2323FNiJ9.eyJpc3MiOiJodHRwOlwvXC9sb2NhbC5waHAuY29tXC9hcGlcL2FkbWluXC9yZWZyZXNoIiwiaWF0IjoxNTcyOTQwMjYzLCJleHAiOjE1NzI5NDQyMjUsIm5iZiI6MTU3Mjk0MDYyNSwianRpIjoicHltZUxsNEIxNHg3YnIxRSIsInN1YiI6MSwicHJ2IjoiZGY4ODNkYjk3YmQwNWVmOGZmODUwODJkNjg2YzQ1ZTgzMmU1OTNhOSJ9.KeLIUcTkMtCMvKMUH5HTKg0VDKRafVuo4i6lnOdXh0s",
        "token_type": "bearer",
        "expires_in": 3600
    }
}


重置密码 POST /change_password

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
old_passwordstring原密码
passwordstring新密码

response:

{
    "code": 0,
    "data": 1
}


首页

Banner获取 GET /banner

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": [
        {
            "id": 1,
            "img": "images/banners/57fgriXB5YJbzkqnZGPbOM3h0PaLsmwfbPfgLA18.jpeg",
            "url": "http://www.web-666.com",
            "img_url": "http://local.php.com/upload/images/banners/57fgriXB5YJbzkqnZGPbOM3h0PaLsmwfbPfgLA18.jpeg"
        },
        {
            "id": 2,
            "img": "images/banners/sXDrbUUzgRvMX1waiQvX07PjSASk15CvQ1Jf4UEx.jpeg",
            "url": "http://www.web-666.com",
            "img_url": "http://local.php.com/upload/images/banners/sXDrbUUzgRvMX1waiQvX07PjSASk15CvQ1Jf4UEx.jpeg"
        },
        {
            "id": 3,
            "img": "images/banners/0vvCVPalU5OWl1d5z4znx32Y4dPHkw9MxxkrjCel.jpeg",
            "url": "http://www.web-666.com",
            "img_url": "http://local.php.com/upload/images/banners/0vvCVPalU5OWl1d5z4znx32Y4dPHkw9MxxkrjCel.jpeg"
        }
    ]
}


获取信息 GET /info

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

  • is_open:活动是否开启(1:开启,0关闭),start_at:活动开始时间,end_at:活动结束时间,count:一天投票次数,votes:一次投票数,views:浏览量,product_count:模特总数,vote_count:总票数

{
    "code": 0,
    "data": {
        "is_open": 0,
        "start_at": "2029-12-10 00:00:00",
        "end_at": "2029-12-29 23:59:59",
        "count": 1,
        "votes": 10,
        "views": 3606,
        "product_count": 166,
        "vote_count": 1024
    }
}


产品列表 GET /product

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Params:
pageint页码
typeint类型,1:女模,2:男模,3:童模
namestring姓名

response:

{
    "code": 0,
    "data": {
        "current_page": 1,
        "data": [
            {
                "id": 72,
                "name": "Madelyn",
                "img": "images/products/z19fYI6bOGjso1hSRNxTCysm2kcG87xDvUwvKrQv.jpeg",
                "votes": 244,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/z19fYI6bOGjso1hSRNxTCysm2kcG87xDvUwvKrQv.jpeg"
            },
            {
                "id": 71,
                "name": "Gabriella",
                "img": "images/products/Gc2MBhJGzjvdLvtcoK6DeG64IHDoNM0SV4wtjajI.jpeg",
                "votes": 228,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/Gc2MBhJGzjvdLvtcoK6DeG64IHDoNM0SV4wtjajI.jpeg"
            },
            {
                "id": 70,
                "name": "Sadie",
                "img": "images/products/2vi8xmslPpdX67vd3ZYScGXntHkfE83zdtsFn0fD.jpeg",
                "votes": 169,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/2vi8xmslPpdX67vd3ZYScGXntHkfE83zdtsFn0fD.jpeg"
            },
            {
                "id": 69,
                "name": "Kennedy",
                "img": "images/products/yRPqAwWoCXw9JKOFYS9BZR2KTZ3LDHA8WTbAxt7M.jpeg",
                "votes": 214,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/yRPqAwWoCXw9JKOFYS9BZR2KTZ3LDHA8WTbAxt7M.jpeg"
            },
            {
                "id": 68,
                "name": "Sarah",
                "img": "images/products/FEmj9MzZK37xYYeEw98QCxtFVaEIhcFy16PMjWfB.jpeg",
                "votes": 213,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/FEmj9MzZK37xYYeEw98QCxtFVaEIhcFy16PMjWfB.jpeg"
            },
            {
                "id": 67,
                "name": "Caroline",
                "img": "images/products/A0dB33WgnmyPy5iPuNp5ywRyNXyZu3TNYvXvCYTJ.jpeg",
                "votes": 181,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/A0dB33WgnmyPy5iPuNp5ywRyNXyZu3TNYvXvCYTJ.jpeg"
            },
            {
                "id": 66,
                "name": "Lucy",
                "img": "images/products/4xxhqwPOGMKaMfh3X1qf1delDqYixQSUBdkzMGFy.jpeg",
                "votes": 208,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/4xxhqwPOGMKaMfh3X1qf1delDqYixQSUBdkzMGFy.jpeg"
            },
            {
                "id": 65,
                "name": "Ariana",
                "img": "images/products/ZAubdhnLE3EC8HxvRpL26Ra1xNTJMZPAUs1G5v9d.jpeg",
                "votes": 186,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/ZAubdhnLE3EC8HxvRpL26Ra1xNTJMZPAUs1G5v9d.jpeg"
            },
            {
                "id": 64,
                "name": "Aaliyah",
                "img": "images/products/B7XpxXnsrVMNrX7g1QqcOAMVmTLlNZTQtZzfSRNe.jpeg",
                "votes": 194,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/B7XpxXnsrVMNrX7g1QqcOAMVmTLlNZTQtZzfSRNe.jpeg"
            },
            {
                "id": 63,
                "name": "Anna",
                "img": "images/products/cYxdFmzQLkZ7ZoSDJ4txo7W6UToNDuuEoUbXJxFc.jpeg",
                "votes": 162,
                "type": 1,
                "img_url": "http://local.php.com/upload/images/products/cYxdFmzQLkZ7ZoSDJ4txo7W6UToNDuuEoUbXJxFc.jpeg"
            }
        ],
        "first_page_url": "http://local.php.com/api/product?page=1",
        "from": 1,
        "last_page": 8,
        "last_page_url": "http://local.php.com/api/product?page=8",
        "next_page_url": "http://local.php.com/api/product?page=2",
        "path": "http://local.php.com/api/product",
        "per_page": 10,
        "prev_page_url": null,
        "to": 10,
        "total": 72
    }
}


产品详情 GET /product/{product_id}

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": {
        "id": 1,
        "name": "Amelia",
        "age": 27,
        "height": "177",
        "weight": "47",
        "intro": "",
        "img": "images/products/KQwUh1m7KXnSRxluiulEAjNXUXSBuNbUydFMGhZ1.jpeg",
        "votes": 208,
        "type": 1,
        "img_url": "http://local.php.com/upload/images/products/KQwUh1m7KXnSRxluiulEAjNXUXSBuNbUydFMGhZ1.jpeg"
    }
}


投票 POST /vote

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
votesstring产品id,格式:"1,3,4,5,6,10,16,20,21,23"

response:

{
    "code": 0,
    "data": true
}


排行榜 GET /ranking

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": [
        {
            "id": 19,
            "name": "Victoria",
            "img": "images/products/JT271D7Jz9WDUQlOLx1lzLGIRouDSnlPIT6E86EX.jpeg",
            "votes": 255,
            "type": 3,
            "img_url": "http://local.php.com/upload/images/products/JT271D7Jz9WDUQlOLx1lzLGIRouDSnlPIT6E86EX.jpeg"
        },
        {
            "id": 10,
            "name": "Chloe",
            "img": "images/products/lDW2ZSq9jXQUYZpiiwdECvukPFsgFblqAklIhuiN.jpeg",
            "votes": 254,
            "type": 1,
            "img_url": "http://local.php.com/upload/images/products/lDW2ZSq9jXQUYZpiiwdECvukPFsgFblqAklIhuiN.jpeg"
        },
        {
            "id": 24,
            "name": "Lillian",
            "img": "images/products/HFGrT51cWojTC7Do0IVBe2KjZ0JFdq9BBAT7PpMo.jpeg",
            "votes": 251,
            "type": 3,
            "img_url": "http://local.php.com/upload/images/products/HFGrT51cWojTC7Do0IVBe2KjZ0JFdq9BBAT7PpMo.jpeg"
        },
        {
            "id": 22,
            "name": "Penelope",
            "img": "images/products/V4rsbqWJ3SLiCr4VEuXBYcTrZyO2oyN3EEDfDEpy.jpeg",
            "votes": 251,
            "type": 3,
            "img_url": "http://local.php.com/upload/images/products/V4rsbqWJ3SLiCr4VEuXBYcTrZyO2oyN3EEDfDEpy.jpeg"
        },
        {
            "id": 34,
            "name": "roderick",
            "img": "images/products/A26ZNBYIkDQCmOszhrYZ9zDHk3KlqSUBg8Q1k7V8.jpeg",
            "votes": 248,
            "type": 2,
            "img_url": "http://local.php.com/upload/images/products/A26ZNBYIkDQCmOszhrYZ9zDHk3KlqSUBg8Q1k7V8.jpeg"
        },
        {
            "id": 72,
            "name": "Madelyn",
            "img": "images/products/z19fYI6bOGjso1hSRNxTCysm2kcG87xDvUwvKrQv.jpeg",
            "votes": 244,
            "type": 1,
            "img_url": "http://local.php.com/upload/images/products/z19fYI6bOGjso1hSRNxTCysm2kcG87xDvUwvKrQv.jpeg"
        },
        {
            "id": 55,
            "name": "Claire",
            "img": "images/products/giynYzlqTXmGtRYy9tv5FLqEM777dEMfO4W56t28.jpeg",
            "votes": 238,
            "type": 1,
            "img_url": "http://local.php.com/upload/images/products/giynYzlqTXmGtRYy9tv5FLqEM777dEMfO4W56t28.jpeg"
        },
        {
            "id": 45,
            "name": "Layla",
            "img": "images/products/nXokZoXWMbN3PF4SKkRbxHUqO6UWotH6GasFgvRF.jpeg",
            "votes": 237,
            "type": 1,
            "img_url": "http://local.php.com/upload/images/products/nXokZoXWMbN3PF4SKkRbxHUqO6UWotH6GasFgvRF.jpeg"
        },
        {
            "id": 15,
            "name": "frederic",
            "img": "images/products/DgKSmt3b08k23oXhQ84ZFKAamqjL12QOoKW7GXIY.jpeg",
            "votes": 237,
            "type": 3,
            "img_url": "http://local.php.com/upload/images/products/DgKSmt3b08k23oXhQ84ZFKAamqjL12QOoKW7GXIY.jpeg"
        },
        {
            "id": 53,
            "name": "Savannah",
            "img": "images/products/5UiblctkdTjadbJ6l6CElfo1wwTpxqXG1yFy45BO.jpeg",
            "votes": 235,
            "type": 1,
            "img_url": "http://local.php.com/upload/images/products/5UiblctkdTjadbJ6l6CElfo1wwTpxqXG1yFy45BO.jpeg"
        }
    ]
}


浏览 GET /view

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": 1
}



后端 /api/admin

认证

登录 POST /login

request:

  • 管理员账号:admin,123456

参数类型必填描述
Body:
namestring用户名
passwordstring密码
captchastring验证码
captcha_keystring验证码key

response:

{
    "code": 0,
    "data": {
        "access_token": "eyJ0eXAiOiJKVFDSFSDF34ciOFDSF343iJ9.eyJpc3MiOiJodHRwOlwvXC9sb2NhbC5waHAuY29tXC9hcGlcL2FkbWluXC9sb2dpbiIsImlhdCI6MTU3Mjg3MzMyMywiZXhwIjoxNTcyODc2OTIzLCJuYmYiOjE1NzI4NzMzMjMsImp0aSI6ImhXNG9ZdzBDakNyVmZ4UlEiLCJzdWIiOjEsInBydiI6ImRmODgzZGI5N2JkMDVlZjhmZjg1MDgyZDY4NmM0NWU4MzJlNTkzYTkifQ.B3k3EnawgMfo2QdWO3fDCJcqP7hldpJLRdqIpczftZo",
        "token_type": "bearer",
        "expires_in": 3600
    }
}


获取用户信息 GET /user

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": {
        "id": 1,
        "name": "admin"
    }
}


登出 POST /logout

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "message": "Successfully logged out"
}


刷新token POST /refresh

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": {
        "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciWEW2323FNiJ9.eyJpc3MiOiJodHRwOlwvXC9sb2NhbC5waHAuY29tXC9hcGlcL2FkbWluXC9yZWZyZXNoIiwiaWF0IjoxNTcyOTQwMjYzLCJleHAiOjE1NzI5NDQyMjUsIm5iZiI6MTU3Mjk0MDYyNSwianRpIjoicHltZUxsNEIxNHg3YnIxRSIsInN1YiI6MSwicHJ2IjoiZGY4ODNkYjk3YmQwNWVmOGZmODUwODJkNjg2YzQ1ZTgzMmU1OTNhOSJ9.KeLIUcTkMtCMvKMUH5HTKg0VDKRafVuo4i6lnOdXh0s",
        "token_type": "bearer",
        "expires_in": 3600
    }
}


基本设置

获取设置 GET /setting

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

  • is_open:活动是否开启(1:开启,0关闭),start_at:活动开始时间,end_at:活动结束时间,count:一天投票次数,votes:一次投票数,views:浏览量

{
    "code": 0,
    "data": {
        "id": 1,
        "count": 1,
        "votes": 10,
        "views": 1000,
        "is_open": 1,
        "start_at": "2019-12-10 00:00:00",
        "end_at": "2019-12-29 23:59:59"
    }
}


修改设置 PUT /setting

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
is_open
int是否开启: 1开启,0关闭
start_atstring活动开始时间, 格式:"2029-01-01 00:00:00"
end_atstring活动结束时间, 格式:"2029-02-01 23:59:59"
count
int一天投票次数
votesint一次投票数
viewsint浏览量

response:

{
    "code": 0,
    "data": 1
}


Banner管理

Banner获取 GET /banner

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Params:
pageint页码
order_bystringid_desc:按id降序(默认),id_asc:按id升序,order_desc:按order降序,order_asc:按order升序

response:

{
    "code": 0,
    "data": {
        "current_page": 1,
        "data": [
            {
                "id": 32,
                "img": "images/banners/L6zxZrSxQtiUWsfBOdFHaCdSgRLucDmh69qyhion.jpeg",
                "url": "",
                "order": 100,
                "created_at": "2029-12-02 19:15:37",
                "img_url": "http://local.php.com/upload/images/banners/L6zxZrSxQtiUWsfBOdFHaCdSgRLucDmh69qyhion.jpeg"
            },
            {
                "id": 31,
                "img": "images/banners/EuXiVi27tR46awxIDXudrhkVRDViaAQLgHdOLW7h.jpeg",
                "url": "",
                "order": 100,
                "created_at": "2029-11-08 08:28:58",
                "img_url": "http://local.php.com/upload/images/banners/EuXiVi27tR46awxIDXudrhkVRDViaAQLgHdOLW7h.jpeg"
            },
            {
                "id": 29,
                "img": "images/banners/3r9JuNLD7nqntvbXDlwcLvdf2zDCbNfYmoqKjvpF.jpeg",
                "url": "http://www.web-666.com",
                "order": 102,
                "created_at": "2029-11-07 13:50:20",
                "img_url": "http://local.php.com/upload/images/banners/3r9JuNLD7nqntvbXDlwcLvdf2zDCbNfYmoqKjvpF.jpeg"
            },
            {
                "id": 28,
                "img": "images/banners/vzoT5GiqFqiKqWOnbbwT6J7sPTumA27Ycc1CGnn9.jpeg",
                "url": "",
                "order": 104,
                "created_at": "2029-11-07 13:46:18",
                "img_url": "http://local.php.com/upload/images/banners/vzoT5GiqFqiKqWOnbbwT6J7sPTumA27Ycc1CGnn9.jpeg"
            },
            {
                "id": 26,
                "img": "images/banners/QvLoSRy5nng6pt2j2FpUpu9oqJqyH9dexoGf4MgI.jpeg",
                "url": "",
                "order": 100,
                "created_at": "2029-11-07 12:02:47",
                "img_url": "http://local.php.com/upload/images/banners/QvLoSRy5nng6pt2j2FpUpu9oqJqyH9dexoGf4MgI.jpeg"
            },
            {
                "id": 24,
                "img": "images/banners/KWhehGGsONQycIUIfMNQujGSZjpRJlCff6hRdkmf.jpeg",
                "url": "http://www.web-666.com",
                "order": 100,
                "created_at": "2029-11-06 15:41:50",
                "img_url": "http://local.php.com/upload/images/banners/KWhehGGsONQycIUIfMNQujGSZjpRJlCff6hRdkmf.jpeg"
            },
            {
                "id": 22,
                "img": "images/banners/9MdNzkOrAYJpticjQlOQLIkPG4ith2z8t6HW3xS4.jpeg",
                "url": "http://www.web-666.com",
                "order": 100,
                "created_at": "2029-11-06 15:41:47",
                "img_url": "http://local.php.com/upload/images/banners/9MdNzkOrAYJpticjQlOQLIkPG4ith2z8t6HW3xS4.jpeg"
            },
            {
                "id": 21,
                "img": "images/banners/lcpuUoyEbptB9FmY44pp8RoBurvwFhhR5eEUlG45.jpeg",
                "url": "http://www.web-666.com",
                "order": 100,
                "created_at": "2029-11-06 15:41:44",
                "img_url": "http://local.php.com/upload/images/banners/lcpuUoyEbptB9FmY44pp8RoBurvwFhhR5eEUlG45.jpeg"
            },
            {
                "id": 20,
                "img": "images/banners/pcOjLOFAqjJVA3JfpFpfhbWjftNMIgQo5KnLknLq.jpeg",
                "url": "http://www.web-666.com",
                "order": 100,
                "created_at": "2029-11-06 15:41:42",
                "img_url": "http://local.php.com/upload/images/banners/pcOjLOFAqjJVA3JfpFpfhbWjftNMIgQo5KnLknLq.jpeg"
            },
            {
                "id": 19,
                "img": "images/banners/0UpLL2FRYI9BBQMcon8JvI4HfnAFAsp6MOB2VnCR.jpeg",
                "url": "http://www.web-666.com",
                "order": 100,
                "created_at": "2029-11-06 15:41:41",
                "img_url": "http://local.php.com/upload/images/banners/0UpLL2FRYI9BBQMcon8JvI4HfnAFAsp6MOB2VnCR.jpeg"
            }
        ],
        "first_page_url": "http://local.php.com/api/admin/banner?page=1",
        "from": 1,
        "last_page": 3,
        "last_page_url": "http://local.php.com/api/admin/banner?page=3",
        "next_page_url": "http://local.php.com/api/admin/banner?page=2",
        "path": "http://local.php.com/api/admin/banner",
        "per_page": 10,
        "prev_page_url": null,
        "to": 10,
        "total": 22
    }
}


Banner添加 POST /banner

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
imgstring上传返回的img
urlstring链接
orderint排序,默认100

response:

{
    "code": 0,
    "data": true
}


Banner修改 PUT /banner/{banner_id}

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
imgstring上传返回的img
urlstring链接
orderint排序,默认100

response:

{
    "code": 0,
    "data": 1
}


Banner删除 DELETE /banner/{banner_id}

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": 1
}


上传图片 POST /banner/upload

request:

  • 上传jpg/jpeg/png/gif格式,不超过2M的图片,尺寸:700x280px

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
imgfile上传图片

response:

{
    "code": 0,
    "data": {
        "img": "temp/2029-12-02/7PRuZrMxKAbjxUrACKCEkN3rclbgUtNYdNJAApHX.jpeg",
        "img_url": "http://local.php.com/upload/temp/2029-12-02/7PRuZrMxKAbjxUrACKCEkN3rclbgUtNYdNJAApHX.jpeg"
    }
}


产品管理

产品列表 GET /product

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Params:
pageint页码
namestring姓名
type
int类型,1:女模,2:男模,3:童模
order_bystringid_desc:按id降序(默认),id_asc:按id升序,order_desc:按order降序,order_asc:按order升序

response:

{
    "code": 0,
    "data": {
        "current_page": 1,
        "data": [
            {
                "id": 72,
                "name": "Madelyn",
                "img": "images/products/z19fYI6bOGjso1hSRNxTCysm2kcG87xDvUwvKrQv.jpeg",
                "age": 27,
                "height": "177",
                "weight": "47",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:40:42",
                "img_url": "http://local.php.com/upload/images/products/z19fYI6bOGjso1hSRNxTCysm2kcG87xDvUwvKrQv.jpeg"
            },
            {
                "id": 71,
                "name": "Gabriella",
                "img": "images/products/Gc2MBhJGzjvdLvtcoK6DeG64IHDoNM0SV4wtjajI.jpeg",
                "age": 26,
                "height": "176",
                "weight": "46",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:40:05",
                "img_url": "http://local.php.com/upload/images/products/Gc2MBhJGzjvdLvtcoK6DeG64IHDoNM0SV4wtjajI.jpeg"
            },
            {
                "id": 70,
                "name": "Sadie",
                "img": "images/products/2vi8xmslPpdX67vd3ZYScGXntHkfE83zdtsFn0fD.jpeg",
                "age": 28,
                "height": "178",
                "weight": "48",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:39:32",
                "img_url": "http://local.php.com/upload/images/products/2vi8xmslPpdX67vd3ZYScGXntHkfE83zdtsFn0fD.jpeg"
            },
            {
                "id": 69,
                "name": "Kennedy",
                "img": "images/products/yRPqAwWoCXw9JKOFYS9BZR2KTZ3LDHA8WTbAxt7M.jpeg",
                "age": 27,
                "height": "177",
                "weight": "47",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:38:55",
                "img_url": "http://local.php.com/upload/images/products/yRPqAwWoCXw9JKOFYS9BZR2KTZ3LDHA8WTbAxt7M.jpeg"
            },
            {
                "id": 68,
                "name": "Sarah",
                "img": "images/products/FEmj9MzZK37xYYeEw98QCxtFVaEIhcFy16PMjWfB.jpeg",
                "age": 26,
                "height": "176",
                "weight": "46",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:38:24",
                "img_url": "http://local.php.com/upload/images/products/FEmj9MzZK37xYYeEw98QCxtFVaEIhcFy16PMjWfB.jpeg"
            },
            {
                "id": 67,
                "name": "Caroline",
                "img": "images/products/A0dB33WgnmyPy5iPuNp5ywRyNXyZu3TNYvXvCYTJ.jpeg",
                "age": 25,
                "height": "175",
                "weight": "45",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:37:52",
                "img_url": "http://local.php.com/upload/images/products/A0dB33WgnmyPy5iPuNp5ywRyNXyZu3TNYvXvCYTJ.jpeg"
            },
            {
                "id": 66,
                "name": "Lucy",
                "img": "images/products/4xxhqwPOGMKaMfh3X1qf1delDqYixQSUBdkzMGFy.jpeg",
                "age": 24,
                "height": "174",
                "weight": "44",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:37:18",
                "img_url": "http://local.php.com/upload/images/products/4xxhqwPOGMKaMfh3X1qf1delDqYixQSUBdkzMGFy.jpeg"
            },
            {
                "id": 65,
                "name": "Ariana",
                "img": "images/products/ZAubdhnLE3EC8HxvRpL26Ra1xNTJMZPAUs1G5v9d.jpeg",
                "age": 32,
                "height": "182",
                "weight": "52",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:35:54",
                "img_url": "http://local.php.com/upload/images/products/ZAubdhnLE3EC8HxvRpL26Ra1xNTJMZPAUs1G5v9d.jpeg"
            },
            {
                "id": 64,
                "name": "Aaliyah",
                "img": "images/products/B7XpxXnsrVMNrX7g1QqcOAMVmTLlNZTQtZzfSRNe.jpeg",
                "age": 31,
                "height": "181",
                "weight": "51",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:34:55",
                "img_url": "http://local.php.com/upload/images/products/B7XpxXnsrVMNrX7g1QqcOAMVmTLlNZTQtZzfSRNe.jpeg"
            },
            {
                "id": 63,
                "name": "Anna",
                "img": "images/products/cYxdFmzQLkZ7ZoSDJ4txo7W6UToNDuuEoUbXJxFc.jpeg",
                "age": 30,
                "height": "180",
                "weight": "50",
                "type": 1,
                "order": 1000,
                "created_at": "2019-12-11 14:34:16",
                "img_url": "http://local.php.com/upload/images/products/cYxdFmzQLkZ7ZoSDJ4txo7W6UToNDuuEoUbXJxFc.jpeg"
            }
        ],
        "first_page_url": "http://local.php.com/api/admin/product?page=1",
        "from": 1,
        "last_page": 8,
        "last_page_url": "http://local.php.com/api/admin/product?page=8",
        "next_page_url": "http://local.php.com/api/admin/product?page=2",
        "path": "http://local.php.com/api/admin/product",
        "per_page": 10,
        "prev_page_url": null,
        "to": 10,
        "total": 72
    }
}


添加商品 POST /product

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
namestring姓名
imgstring上传返回的img
ageint年龄
heightint身高,单位:cm
weightint体重,单位:kg
typeint类型,1:女模,2:男模,3:童模
introstring简介
orderint排序,默认1000

response:

{
    "code": 0,
    "data": true
}


修改商品 PUT /product/{product_id}

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
namestring姓名
imgstring上传返回的img
ageint年龄
heightint身高,单位:cm
weightint体重,单位:kg
typeint类型,1:女模,2:男模,3:童模
introstring简介
orderint排序,默认1000

response:

{
    "code": 0,
    "data": 1
}


删除商品 DELETE /product/{product_id}

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "code": 0,
    "data": 1
}


上传图片 POST /product/upload

request:

  • 上传jpg/jpeg/png/gif格式,不超过2M的图片,尺寸:400x400px

参数类型必填描述
Headers:
AuthorizationstringBearer token
Body:
imgfile上传图片

response:

{
    "code": 0,
    "data": {
        "img": "temp/2029-12-02/7PRuZrMxKAbjxUrACKCEkN3rclbgUtNYdNJAApHX.jpeg",
        "img_url": "http://local.php.com/upload/temp/2029-12-02/7PRuZrMxKAbjxUrACKCEkN3rclbgUtNYdNJAApHX.jpeg"
    }
}


编辑器上传图片 POST /editor/upload

request:

  • 上传jpg/jpeg/png/gif格式,不超过2M的图片

参数类型必填描述
Headers:
AuthorizationstringBearer token

response:

{
    "errno": 0,
    "data": [
        "http://local.php.com/upload/images/editor/2029-12-07/R4PRmOvqR86zcsJUGVS6wSKP5L0PH4MznnGIgvcd.jpeg",
        "http://local.php.com/upload/images/editor/2029-12-07/dohO9A82cAj4hchSxZv0l5fg1Qqq7vWdFBVgkQaM.jpeg"
    ]
}


投票记录

投票列表 GET /vote

request:

参数类型必填描述
Headers:
AuthorizationstringBearer token
Params:
pageint页码
start_atstring开始时间, 格式:"2029-01-01 00:00:00"
end_atstring结束时间, 格式:"2029-02-01 23:59:59"

response:

{
    "code": 0,
    "data": {
        "current_page": 1,
        "data": [
            {
                "id": 33,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:29",
                "phone": "15999999901"
            },
            {
                "id": 32,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:28",
                "phone": "15999999901"
            },
            {
                "id": 31,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:27",
                "phone": "15999999901"
            },
            {
                "id": 30,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:27",
                "phone": "15999999901"
            },
            {
                "id": 29,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:26",
                "phone": "15999999901"
            },
            {
                "id": 28,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:25",
                "phone": "15999999901"
            },
            {
                "id": 27,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:24",
                "phone": "15999999901"
            },
            {
                "id": 26,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:23",
                "phone": "15999999901"
            },
            {
                "id": 25,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:22",
                "phone": "15999999901"
            },
            {
                "id": 24,
                "user_id": 1,
                "votes": "21,22,23,24,25,26,27,28,29,30",
                "created_at": "2019-12-14 09:23:21",
                "phone": "15999999901"
            }
        ],
        "first_page_url": "http://local.php.com/api/admin/vote?page=1",
        "from": 1,
        "last_page": 4,
        "last_page_url": "http://local.php.com/api/admin/vote?page=4",
        "next_page_url": "http://local.php.com/api/admin/vote?page=2",
        "path": "http://local.php.com/api/admin/vote",
        "per_page": 10,
        "prev_page_url": null,
        "to": 10,
        "total": 33,
        "vote_count": "14247"
    }
}