Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

APIでリクエストするフィールドを限定できるようにする(軽量化) #11029

Open
kakkokari-gtyih opened this issue Jun 18, 2023 · 4 comments
Labels
✨Feature This adds/improves/enhances a feature

Comments

@kakkokari-gtyih
Copy link
Contributor

kakkokari-gtyih commented Jun 18, 2023

Summary

APIリクエストにて、取りたいフィールドを限定できるようにすることで、レスポンスを小さく、クライアント側の処理を軽くできるようにする

とくにPlayとかでは、現状Playのリストを取りたいだけのユースケースであっても、AiScript本体も同時に帰ってくるので、この機能の実装によりかなりの軽量化が期待できる

実装例(flash/featured

Payload

{
    "limit": 2,
    "fields": [
        "id",
        "title",
        "summary",
        "user"
    ]
}

Response

[
    {
        "id": "9b3ug9hsty",
        "user": {
            "id": "9b261e6zr5",
            "name": "まぐかっぷ",
            "username": "mugcAp",
            "host": null,
            "avatarUrl": "https://nos3.arkjp.net/avatar.webp?url=https%3A%2F%2Fs3.arkjp.net%2Fmisskey%2Fwebpublic-ede2926a-6b0c-4058-ac59-22241cb2309d.jpg&avatar=1",
            "avatarBlurhash": "e8A,Rl%M0eD*?HxZRkxtofIo9tRl-oxuD*~Wt70LIV-p%2f7IoR%s:",
            "isBot": false,
            "isCat": false,
            "emojis": {},
            "onlineStatus": "active",
            "badgeRoles": []
        },
        "title": "サバイバルゲーム",
        "summary": "探索して食べ物集める。"
    },
    {
        "id": "9czhc250sz",
        "user": {
            "id": "9bxq81zkcy",
            "name": ":blobcatartist:蒼樹甘楽:puddingified_verify:",
            "username": "Gigantic_Thor",
            "host": null,
            "avatarUrl": "https://nos3.arkjp.net/avatar.webp?url=https%3A%2F%2Fs3.arkjp.net%2Fmisskey%2Fb4169ef1-da44-407a-b128-d10dd6282495.gif&avatar=1",
            "avatarBlurhash": "eANK@;-=o#.AMwt6RiogRit8tSf6aeV?xvt7WAyEx^aeogWAt8tSkC",
            "isBot": false,
            "isCat": true,
            "emojis": {},
            "onlineStatus": "online",
            "badgeRoles": [
                {
                    "name": "Misskey Supporter",
                    "iconUrl": "https://s3.arkjp.net/misskey/dab4e89c-4ed1-4c06-918d-441db61dabaf.png",
                    "displayOrder": 10
                },
                {
                    "name": "Patreon Supporter",
                    "iconUrl": "https://s3.arkjp.net/misskey/c501ecfd-2bc3-4c44-a6da-fddb57e12126.png",
                    "displayOrder": 10
                }
            ]
        },
        "title": "1日1回パンケーキチャレンジ",
        "summary": "blobにおおきなパンケーキをごちそうしよう!"
    }
]
@kakkokari-gtyih kakkokari-gtyih added the ✨Feature This adds/improves/enhances a feature label Jun 18, 2023
@syuilo
Copy link
Member

syuilo commented Jun 18, 2023

Related #4635

@pantasystem
Copy link

こちらのフィールドの属性を未指定にした場合どうなることが想定されているのでしょうか?…
後方互換性などがどうなるのか気になりました。

@kakkokari-gtyih
Copy link
Contributor Author

kakkokari-gtyih commented Jun 18, 2023

こちらのフィールドの属性を未指定にした場合どうなることが想定されているのでしょうか?… 後方互換性などがどうなるのか気になりました。

@pantasystem 未指定で全フィールドが出る(現状と変わらない)を想定していますので後方互換性は問題ないかと

@kakkokari-gtyih
Copy link
Contributor Author

実際にやってみた kakkokari-gtyih@fe6f91b

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨Feature This adds/improves/enhances a feature
Projects
None yet
Development

No branches or pull requests

3 participants