Xuite
Xuite.net | |
URL | https://xuite.net/ |
Status | Closing |
Archiving status | Not saved yet |
Archiving type | Unknown |
IRC channel | #archiveteam-bs (on hackint) |
Xuite (pronounced "sweet") is a Taiwanese blog website operated by Chunghwa Telecom, founded in 2005. Xuite currently provides blog, photo album, and video services.
Shutdown
Announcement:
Xuite隨意窩平台服務終止公告
感謝您長期以來對Xuite隨意窩服務的支持,「Xuite 隨意窩」是許多人曾經的青春日記,也是現在進行式的樂活人生筆記。惟考量現今社群使用習慣改變,為使資源做更有效運用,Xuite隨意窩將於112年8月31日終止服務,並刪除網站全部資料。自112年4月6日起,我們提供所有 Xuiter(會員)後續處理服務,請注意以下關站時程,建議您盡早進行資料備份下載與部落格搬家等相關作業。
Closing schedule
Phase 1: April 6th 10:00 UTC+8 ~ May 1st 10:00 UTC+8, 2023
- The website functions normally.
- Data backup and download functions are provided for the members.
Phase 2: May 1st 10:00 UTC+8 ~ August 31st 14:00 UTC+8, 2023
- Stop the opening of new member registration.
- The website enters read-only mode, and the management console will be closed.
- Members can browse the public webpage normally but cannot enter the management console to add, modify or delete the contents.
- Only data backup and download functions are provided.
Phase 3: August 31st 14:00 UTC+8, 2023
- The website is closed and cannot be accessed.
- Members cannot backup or restore their data. All data will be deleted.
Domains
The following domains are currently functional:
- xuite.tw
- xuite.net
- api.xuite.net
- avatar.xuite.net
- blog.xuite.net
- events.xuite.net
- img.xuite.net
- m.xuite.net
- wms.map.xuite.net
- my.xuite.net
- photo.xuite.net
- qa.xuite.net
- redir.xuite.net
- s.blog.xuite.net
- s.photo.xuite.net
- town.xuite.net
- vlog.xuite.net
The following domains host user-generated contents:
- [0-9a-f].blog.xuite.net
- [0-9a-f].mms.blog.xuite.net (suffering from invalid certificate common name)
- [0-9a-f].photo.xuite.net (suffering from invalid certificate common name)
- o.[0-9a-f].photo.xuite.net
- [0-9a-f].share.photo.xuite.net
- [0-9a-f].mms.vlog.xuite.net
The following domains redirect the pages elsewhere:
- event.xuite.net
- roomi.xuite.net
- vip.xuite.net
The following domain always returns HTTP 404:
- vote.xuite.net
Site structure
Assuming all the numeric IDs are incrementing, as of April 2023, there are about 51M accounts, 591M blog articles, 21M albums, 1270M photos, and 33M videos or audios on Xuite.
Each member has a user_id in the regex form of [a-z0-9\.]{1,20}
and a numeric serial number. The currently known serial number ranges are 10000000~32000000 and 230000000~262000000.
- User homepage: https://m.xuite.net/home/xuite.net
- Avatar: https://avatar.xuite.net/12084878/s https://avatar.xuite.net/12084878
The user profile service My窩[1] has been terminated since 2021 [2]. There is no way to access the user profile and user friend list through the webpage without using the API.
- https://web.archive.org/web/20201028090057/https://mywall.xuite.net/xuite.net
- https://web.archive.org/web/20201127081902/https://mywall.xuite.net/xuite.net/friend
- https://web.archive.org/web/20201127093949/https://mywall.xuite.net/xuite.net/friend/fan
- https://web.archive.org/web/20201127092805/https://mywall.xuite.net/xuite.net/friend/follow (mutual friendship)
A member can have multiple blogs. Each blog has a custom alphanumeric blogUrl and a globally unique incremental numeric blog_id. The blogUrl is editable after blog creation.
Each article has a globally unique incremental numeric article_id.
- Blog service homepage: https://blog.xuite.net/index_next.php
- Article search:
- User blog list: https://m.xuite.net/blog/xuite.net
Each album has a globally unique incremental numeric album_id. Each photo has a numeric position number and a globally unique incremental numeric photo_id.
- Photo service homepage:
- Albums search:
- User albums: https://m.xuite.net/photo/xuite.net
- Album: https://m.xuite.net/photo/xuite.net/20641189
- Photo: https://photo.xuite.net/xuite.net/20641189/6.jpg https://photo.xuite.net/xuite.net/20641189/6.jpg/sizes/o/
- https://o.1.photo.xuite.net/1/e/4/c/xuite.net/20641189/1260825535.jpg (original, valid Referer header should be provided)
- https://1.share.photo.xuite.net/xuite.net/11e4c64/20641189/1260825535_x.jpg
- https://1.share.photo.xuite.net/xuite.net/11e4c64/20641189/1260825535_l.jpg
- https://1.share.photo.xuite.net/xuite.net/11e4c64/20641189/1260825535_m.jpg
- https://1.share.photo.xuite.net/xuite.net/11e4c64/20641189/1260825535_s.jpg
- https://1.share.photo.xuite.net/xuite.net/11e4c64/20641189/1260825535_t.jpg
- https://1.share.photo.xuite.net/xuite.net/11e4c64/20641189/1260825535_q.jpg
- Photo: https://photo.xuite.net/xuite.net/20641189/6.jpg https://photo.xuite.net/xuite.net/20641189/6.jpg/sizes/o/
- Album: https://m.xuite.net/photo/xuite.net/20641189
Each video or audio has a globally unique incremental numeric MEDIA_ID, and a FILE_NAME in the regex form of [A-Za-z0-9]{6}-MEDIA_ID\.flv
in Base64 encoding forms the video URL.
Each playlist has a globally unique incremental numeric plid.
- Vlog service homepage:
- https://vlog.xuite.net/_portal/list/expert
- https://vlog.xuite.net/_portal/list/latest
- https://vlog.xuite.net/_portal/list/movie
- https://vlog.xuite.net/_portal/list/recommend
- https://vlog.xuite.net/_portal/promote/life
- https://vlog.xuite.net/_portal/promote/creation
- https://vlog.xuite.net/_portal/promote/funny
- https://vlog.xuite.net/_portal/promote/popular
- https://vlog.xuite.net/_portal/promote/topic?id=2021
- https://vlog.xuite.net/_portal/cat/1
- Vlog search:
- User videos and audios: https://m.xuite.net/vlog/xuite.net https://vlog.xuite.net/xuite.net/rss.xml
- Video: https://vlog.xuite.net/play/VmFxcktJLTIwMTM0MjAxLmZsdg== https://vlog.xuite.net/embed/VmFxcktJLTIwMTM0MjAxLmZsdg==
- https://5.mms.vlog.xuite.net/video/xuite.net/VmFxcktJLTIwMTM0MjAxLmZsdg==?k=a9b5eb73f3f72123578da3385afedcbf&q=720 (session key expired)
- https://5.mms.vlog.xuite.net/video/xuite.net/VmFxcktJLTIwMTM0MjAxLmZsdg==?k=a9b5eb73f3f72123578da3385afedcbf&q=360 (session key expired)
- https://vlog.xuite.net/media/home1/1e/4c/12084878/50026/448749-20134201.jpg
- https://vlog.xuite.net/media/home1/1e/4c/12084878/50026/n_448749-20134201.jpg
- https://vlog.xuite.net/media/home1/1e/4c/12084878/50026/sbx-20134201.jpg
- Audio: https://vlog.xuite.net/play/UDVRR1ZxLTUwOTgyNjcuZmx2 https://vlog.xuite.net/embed/UDVRR1ZxLTUwOTgyNjcuZmx2
- Video: https://vlog.xuite.net/play/VmFxcktJLTIwMTM0MjAxLmZsdg== https://vlog.xuite.net/embed/VmFxcktJLTIwMTM0MjAxLmZsdg==
- User playlists: https://m.xuite.net/vlog/xuite.net?vt=1
Members used to be able to embed Flash gadgets in blog sidebars or articles. Although these gadgets are deprecated [3][4], the configuration XML files, images and audios shown in FlashVars are archivable.
If http://c.blog.xuite.net/cf/7b/11732000/blog_698/mtv/4711036/flash_config.xml (occasionally) redirects to the forbidden page https://my.xuite.net/error.php?ecode=403, there is an alternative URL https://blog.xuite.net/_users/cf/7b/11732000/blog_698/mtv/4711036/flash_config.xml .
- 愛秀投影機 MTV
- 手寫塗鴉版 Paint
- 相簿Slideshow
- 電視牆 TV Wall
Web page visitors can use the URL shortener by clicking the "短網址" button in the upper right corner of the website toolbar [5].
- https://xuite.tw/x/1 https://cht.tw/x/1
- https://xuite.tw/x/5p3h https://cht.tw/x/5p3h
- https://xuite.tw/x/vp87d https://cht.tw/x/vp87d
Other subdomains consists mostly of static content, which has been partially saved by Wayback Machine:
- https://events.xuite.net/ (some files are corrupted since 2014)
- https://wms.map.xuite.net/poi/MapExp.php?area=2
- https://photo.xuite.net/_/2006
- https://photo.xuite.net/_/2018?081
- https://town.xuite.net/
API
Xuite Photo Feed API
The following method returns a JSON-encoded album list of the user [6].
The following method returns a JSON-encoded photo list of the album [7].
Xuite API
Members used to be able to apply for Xuite API keys since 2011 [8]. Although new applications were later closed, existing API keys can still be used.
All requests should be accompanied by a signature api_sig derived from the API key and the corresponding 10-digit secret key, but methods with "public" property do not require Oauth 2.0 Authorization from the user.
The signature generation formula is md5(<secret key> + <concatenated parameter values sorted by parameter names>)
[9].
For example, if the API key is 500e40b862395d8a177d402d43cee9db
, the corresponding secret key is 0123456789
, and the query parameters are api_key=500e40b862395d8a177d402d43cee9db&method=xuite.photo.public.getPhotos&user_id=photo&album_id=4286795&pw=&start=0&limit=21
, the signature should be md5(01234567894286795500e40b862395d8a177d402d43cee9db21xuite.photo.public.getPhotos0photo) = afc87f038f0c538677609eca6b1e7e88
.
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=aafb46d0df84917ed392e78d1ec82658&method=xuite.blog.public.getBlogs&user_id=xuite.net
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=91ddd494df969a9d48ba9fbd0a6d79bc&method=xuite.blog.public.getBlogCategories&blog_id=1600410&user_id=xuite.net&blog_pw=
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=e3dc246eefd4e9af61b72a304f1c6770&method=xuite.blog.public.getArticles&blog_id=1600410&user_id=xuite.net&start=1&limit=10&blog_pw=&keyword=&category_id=&date=&month=
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=795bab333a613bbb98e2e8565ca81b07&method=xuite.blog.public.getTopArticle&blog_id=1600410&user_id=xuite.net
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=a48b707bd2f450b50a9867c8696120f0&method=xuite.blog.public.getArticle&blog_id=1600410&user_id=xuite.net&article_id=590728303&blog_pw=&article_pw=
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=d42da343050f94a5b4d6f56dc2d22607&method=xuite.photo.public.getAlbums&user_id=xuite.net&event_set=&start=0&limit=
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=2b4763d62e83debca7d39ef2c3ef3062&method=xuite.photo.public.getPhotos&user_id=xuite.net&album_id=20641189&pw=&start=0&limit=500
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=6d1aa016a78e65eb274615cb85eecb98&method=xuite.vlog.public.getVlogs&user_id=xuite.net&start=0&limit=1000&type= (audio and video)
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=37911577db268829b77b693756f0015d&method=xuite.vlog.public.getVlogs&user_id=xuite.net&start=0&limit=1000&type=1 (audio)
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=0a7864784df7b49adb1ae4cdc3b16b2a&method=xuite.vlog.public.getVlogs&user_id=xuite.net&start=0&limit=1000&type=2 (video)
- https://api.xuite.net/api.php?api_key=500e40b862395d8a177d402d43cee9db&api_sig=2bbc545d3fb3ee59e1ea42e509d6da0e&method=xuite.vlog.public.getVlog&vlog_id=VmFxcktJLTIwMTM0MjAxLmZsdg==&passwd=&site=vlog
Non-public APIs
Some methods are designed to be called by AJAX or Flash. These methods do not require the API key.
User information
- User nickname: https://my.xuite.net/service/account/api/external/sn_name.php?sn=11731841
- User profile: https://blog.xuite.net/_theme/member_data.php?lid=photo
Friend list
Similar to Wretch, the friendship of Xuite is directional. Username discovery can be performed in two directions.
- https://my.xuite.net/service/friend/api/external/friendList.php?sn=12084878&listType=friend&withGroup=false
- https://my.xuite.net/service/friend/api/external/friendList.php?sn=12084878&listType=friend&withGroup=true&callback=addFriendList
- https://my.xuite.net/service/friend/api/external/friendList.php?sn=12084878&listType=addme
- https://my.xuite.net/service/friend/api/external/friendListInfo.php?sn=12084878&listType=friend
- https://my.xuite.net/service/friend/api/external/friendListInfo.php?sn=12084878&listType=addme
Blog AJAX
- Blog popularity counter: https://blog.xuite.net/_theme/CountSideExp.php?bid=1600410
- Article popularity counter: https://blog.xuite.net/_theme/ArticleDetailCounterExp.php?aid=326198595
- Article trackback section: https://blog.xuite.net/_theme/TrackBackShowExp.php?aid=326198595&b_login=xuite.net&b_url=xuite&mid=12084878&bid=1600410&a_author_id=12084878&track_flag=Y&index=
- Article comment section: https://blog.xuite.net/_theme/MessageShowExp.php?ver=new&aid=326198595&uid=12084878&bid=1600410&a_author_id=12084878&index=&mid=
Album photo list
The following method derived from https://blog.xuite.net/_service/swf/slideshow.swf returns an XML-encoded list with album thumbnail and photo size. It uses a 10-character check key that is affected by the day of the week.
- https://photo.xuite.net/@api_slide?key=xuite.net/20641189&count=10000&check=0016c3d2d6 (Monday)
- https://photo.xuite.net/@api_slide?key=xuite.net/20641189&count=10000&check=00161151d5 (Tuesday)
- https://photo.xuite.net/@api_slide?key=xuite.net/20641189&count=10000&check=00165095dd (Wednesday)
- https://photo.xuite.net/@api_slide?key=xuite.net/20641189&count=10000&check=001602181a (Thursday)
- https://photo.xuite.net/@api_slide?key=xuite.net/20641189&count=10000&check=0016d9e106 (Friday)
- https://photo.xuite.net/@api_slide?key=xuite.net/20641189&count=10000&check=001684585b (Saturday)
- https://photo.xuite.net/@api_slide?key=xuite.net/20641189&count=10000&check=00165d832b (Sunday)
Media source info
The following methods return an XML-encoded media source info by providing the Base64-encoded MEDIA_ID solely. The FILE_NAME and owner's user_id can derive from the returned Base64-encoded flv_src.
- https://vlog.xuite.net/_api/media/playcheck/media/MjAxMzQyMDE=
- https://vlog.xuite.net/_api/media/playcheck/media/NTA5ODI2Nw==
- https://vlog.xuite.net/_api/media/playcheck/media/MzYzODQzMg==/pwd/93a5de30baaf8e9bc3b15288c8d45ecb [10]
- https://vlog.xuite.net/flash/player?media=MjAxMzQyMDE=
- https://vlog.xuite.net/flash/player?media=NTA5ODI2Nw==
- https://vlog.xuite.net/flash/audioplayer?media=NTA5ODI2Nw==
Media playlist
- https://vlog.xuite.net/flash/playlist?plid=138725
- https://vlog.xuite.net/_pub/conf_playlist_v2.php?plid=138725
References
- ↑ 《公告》MY窩熱鬧登場囉 @ Xuite站長日誌 :: 隨意窩 Xuite日誌
- ↑ 《公告》「My窩」功能下架通知 @ Xuite站長日誌 :: 隨意窩 Xuite日誌
- ↑ 《公告》隨意窩部分功能將於2017年3月14日異動、終止 @ Xuite站長日誌 :: 隨意窩 Xuite日誌
- ↑ 《公告》舊版Flash相簿播放器下架 @ Xuite站長日誌 :: 隨意窩 Xuite日誌
- ↑ 《教學》全網工具列-短網址 @ Xuite站長日誌 :: 隨意窩 Xuite日誌
- ↑ 隨意窩 Xuite 相簿 - Feed API - 取得相簿列表 API
- ↑ 隨意窩 Xuite 相簿 - Feed API - 取得相片 API
- ↑ 《公告》隨意窩Xuite開放API囉,歡迎大家一起來開發自己的應用程式。
- ↑ https://web.archive.org/web/20210602094928if_/http://api.xuite.net/css/apiSignature.png
- ↑
For password-protected videos (e.g. https://vlog.xuite.net/play/V2JSSGNOLTM2Mzg0MzIubXA0 embedded in https://hornydragon.blogspot.com/2011/05/ck-louis-shameless-1.html), the password hash is
md5(XuiteVlog + <password>)
.
See also