- #文末抽獎
@tsaiotw has launched some new products! Skincare for today!
Aloe Vera soothing jelly mask 100g
Has a great scent and doesn’t feel cold on my skin! (Which I like) even on my bad skin days it doesn’t irritate my skin 🥰 There are two ways to use this, one is apply a thick layer on skin and wash it off after 10 minutes. Another is use a thin layer as the last step of skincare routine! It’s not something super hydrating, so all skin type could use it! I’m dry so I need to add other skincare products to moisturize my skin:) I do like this!
Charcoal deep cleansing jelly mask 100g
I rarely use cleansing masks at all, and this one has a weird smell which I don’t like 😳 It’s not like the normal cleansing masks out there that has a strong effect and might irritate the skin, it’s gentle. By rubbing it while washing it will lead to a better effect after all.
More details and #textureshots 👉
Do you guys use jelly mask on a daily skincare routine?
I would love to know in the comments down below:)
Have a wonderful day 🌸💕
-
今天來分享 #上山採藥 的兩款晚安凍膜~
凍膜我覺得超級適合炎熱的天氣使用!
蘆薈調理舒緩晚安凍膜 100g
在臉有點過敏不適的期間使用也沒有刺痛或刺激的感覺❤️使用感受上很方便,而且敷的時候沒什麼存在感,常常忘記自己臉上有東西😝(喜歡這樣因為有時候敷面膜太冰涼會怕流鼻水😂,這款不會!如果很熱要放冰箱讓它變冰涼也是可以的💕)透明的果凍質地每次擠出來的時候都很療癒🥰有清新的怡人香味!
洗完之後臉有比較光滑、保濕一點的感覺,但也不會過於厚重或者有負擔~後續都還是建議要上平時的保養品才會足夠保濕喔!除了厚敷10分鐘後洗淨的用法之外,也可以在保養最後薄擦一層哦!兩款面膜比較下來我更愛這款!推薦給所有膚質的人都可以使用!
竹炭毛孔淨化晚安凍膜100g
人如其名是黑色透明的質地~有原料的味道~介意味道的人要注意⚠️如果希望把黑頭或是毛孔髒污洗掉搭配按摩的手法是一定要的!比起一般常見的撕除式面膜溫和許多,當然溫和也會反應在效果上~
質地照片👉
你們平常會使用凍膜嗎?
歡迎留言跟我分享❤️
謝謝 上山採藥 提供產品!
這裡抽面膜各一款,一人一款!(共兩名得獎人)
抽獎方法:
追蹤我& @tsaiotw
按讚此篇文章
Tag一位朋友並留言想嘗試哪款面膜和想嘗試的原因
任意收藏我的3篇貼文
可以重複留言,要標記不同朋友
🈲️ 抽獎帳、 50人以下小帳
期限到9/23截止!(限台灣)
品牌寄出!
(限動有額外的抽獎可以去看看👀)
#抽獎 #抽獎中 #美妝抽獎 #抽獎活動 #抽獎文 #抽獎進行中 #抽獎禮物 #skincare #美妝保養 #保養 #保養品 #保養品推薦 #面膜 #面膜分享 #面膜推薦 #面膜控 #フェイシャルマスク #Washablemask #Washablemasks #凍膜 #jellymask #tsaio #植物妝藥家 #夜間進化極美肌 #蘆薈調理舒緩晚安凍膜 #竹炭毛孔淨化晚安凍膜
同時也有2部Youtube影片,追蹤數超過8萬的網紅Belinda Chen,也在其Youtube影片中提到,❤️产品信息区更新了一些产品的使用感受,供大家参考! I N F O ❖❖❖ 想咨询新加坡房产信息的朋友可以联系天哥,电话:+65 81187058;微信:litianyang91 直达电梯: 茶包 00:56 咖啡豆 01:21 咖啡用具 01:51 厨房用品 05:11 生活用品 10:...
「might not用法」的推薦目錄:
- 關於might not用法 在 D.A. Facebook 的精選貼文
- 關於might not用法 在 D.A. Facebook 的最佳貼文
- 關於might not用法 在 Hapa Eikaiwa Facebook 的精選貼文
- 關於might not用法 在 Belinda Chen Youtube 的最讚貼文
- 關於might not用法 在 Hak Me Youtube 的最佳解答
- 關於might not用法 在 陳老師英語教室- May、 might的用法有甚麼分別 ... - Facebook 的評價
- 關於might not用法 在 May 跟Might 差在哪?來一搞懂這些情態助動詞!(文法篇) 的評價
- 關於might not用法 在 YouTube Data API Overview - Google Developers 的評價
might not用法 在 D.A. Facebook 的最佳貼文
- #文末抽獎
@tsaiotw has launched some new products! Skincare for today!
Aloe Vera soothing jelly mask 100g
Has a great scent and doesn’t feel cold on my skin! (Which I like) even on my bad skin days it doesn’t irritate my skin 🥰 There are two ways to use this, one is apply a thick layer on skin and wash it off after 10 minutes. Another is use a thin layer as the last step of skincare routine! It’s not something super hydrating, so all skin type could use it! I’m dry so I need to add other skincare products to moisturize my skin:) I do like this!
Charcoal deep cleansing jelly mask 100g
I rarely use cleansing masks at all, and this one has a weird smell which I don’t like 😳 It’s not like the normal cleansing masks out there that has a strong effect and might irritate the skin, it’s gentle. By rubbing it while washing it will lead to a better effect after all.
More details and #textureshots 👉
Do you guys use jelly mask on a daily skincare routine?
I would love to know in the comments down below:)
Have a wonderful day 🌸💕
-
今天來分享 #上山採藥 的兩款晚安凍膜~
凍膜我覺得超級適合炎熱的天氣使用!
蘆薈調理舒緩晚安凍膜 100g
在臉有點過敏不適的期間使用也沒有刺痛或刺激的感覺❤️使用感受上很方便,而且敷的時候沒什麼存在感,常常忘記自己臉上有東西😝(喜歡這樣因為有時候敷面膜太冰涼會怕流鼻水😂,這款不會!如果很熱要放冰箱讓它變冰涼也是可以的💕)透明的果凍質地每次擠出來的時候都很療癒🥰有清新的怡人香味!
洗完之後臉有比較光滑、保濕一點的感覺,但也不會過於厚重或者有負擔~後續都還是建議要上平時的保養品才會足夠保濕喔!除了厚敷10分鐘後洗淨的用法之外,也可以在保養最後薄擦一層哦!兩款面膜比較下來我更愛這款!推薦給所有膚質的人都可以使用!
竹炭毛孔淨化晚安凍膜100g
人如其名是黑色透明的質地~有原料的味道~介意味道的人要注意⚠️如果希望把黑頭或是毛孔髒污洗掉搭配按摩的手法是一定要的!比起一般常見的撕除式面膜溫和許多,當然溫和也會反應在效果上~
質地照片👉
你們平常會使用凍膜嗎?
歡迎留言跟我分享❤️
謝謝 上山採藥 提供產品!
這裡抽面膜各一款,一人一款!(共兩名得獎人)
抽獎方法:
追蹤我& @tsaiotw
按讚此篇文章
Tag一位朋友並留言想嘗試哪款面膜和想嘗試的原因
任意收藏我的3篇貼文
可以重複留言,要標記不同朋友
🈲️ 抽獎帳、 50人以下小帳
期限到9/23截止!(限台灣)
品牌寄出!
(限動有額外的抽獎可以去看看👀)
#抽獎 #抽獎中 #美妝抽獎 #抽獎活動 #抽獎文 #抽獎進行中 #抽獎禮物 #skincare #美妝保養 #保養 #保養品 #保養品推薦 #面膜 #面膜分享 #面膜推薦 #面膜控 #フェイシャルマスク #Washablemask #Washablemasks #凍膜 #jellymask #tsaio #植物妝藥家 #夜間進化極美肌 #蘆薈調理舒緩晚安凍膜 #竹炭毛孔淨化晚安凍膜
might not用法 在 Hapa Eikaiwa Facebook 的精選貼文
=================================
教科書通りの表現「It seems [that](どうやら〜らしい)」から脱皮しよう
=================================
周りから聞いた情報を他の人に伝える時に使う「どうやら◯◯らしい」という日本語の表現。英語で言う場合は「It seems (that) _____」と表現する人が多いと思いますが、他にもネイティブがよく使う日常的な言い方があるのでご紹介したいと思います。
---------------------------------------------------
1) Apparently
→「どうやら◯◯らしい」
---------------------------------------------------
自分の目で実際に見たり、自ら調べた情報を(事実であると)伝えるのではなく、周りの人から聞いた情報を「◯◯らしい」と人に伝える時に使われます。いわゆる“噂話“をするときによく使われます。自分の発言内容を100%事実だと断言するのを避け、微妙にぼやかした表現として使う巧妙な言い方です。
✔ある程度「真実」であると思っている時に使います。
✔このフレーズは文頭で使われる事が多いです。
✔Apparent」を形容詞として使うと「明らかな」「明白な」を意味するので用法に注意しましょう。
<例文>
Apparently he cheated on his wife.
(どうやら彼は浮気をしたらしい)
Apparently E-cigarettes are just as bad as cigarettes.
(どうやら電子タバコはタバコと同じくらい害があるらしい)
Apparently he doesn’t remember anything from last night.
(どうやら彼は昨日のことを全く覚えていらしい)
---------------------------------------------------
2) As far as I know
→「私の知る限りでは◯◯」
---------------------------------------------------
このフレーズは周りから聞いた情報に限らず、自分で調べたり、既に持ち合わせている知識を基に「私の知る限りでは」「私の知っている範囲では」と言う場合に使われます。例えば、会社のミーティングが来週に延期になったことをマネージャーから聞いた後、同僚から「ミーティングが明日になったらしいけど、本当ですか?」と尋ねられた場合に「As far as I know, it got postponed to next week.(私が知る限りでは来週に延期になりました)」となります。
✔「私が知る限りではそうではない」→「Not as far as I know」
✔多少疑いがあるかもしれない時は、「I might/may be wrong but as far as I know _____.(間違っているかもしれませんが(確かではないですが)、私が知る限りでは◯◯です)」と、頭に「I might/may be wrong (but)」を付け加えて表現することもあります。
✔「To the best of my knowledge」も同じ意味合いで使われますが、表現がやや固くフォーマルな場面で使われることが多いです。
<例文>
As far as I know, he’s coming back next week.
(私が知る限りでは、彼は来週帰ってきます)
I might be wrong but as far as I know, that restaurant closed down a month ago.
(確かではないですけど、私が知る限りではそのレストランは1ヶ月前に閉店しました)
<会話例>
A: Jason didn’t change his appointment did he?
(ジェイソンはアポの時間変更していないですよね?)
B: No, not as far as I know.
(私の知る限りでは変更していません)
~~~~~~~~~~~~~~~~~~~
無料メルマガ『1日1フレーズ!生英語』配信中!
通勤・通学などのちょとした合間を利用して英語が学べるメルマガ『1日1フレーズ!生英語』を平日の毎朝6時に配信中!ただ単にフレーズを紹介しているだけではなく、音声を使った学習プロセスが組み込まれているので、メルマガを読むこと自体が学習方法!
https://hapaeikaiwa.com/mailmagazine/
~~~~~~~~~~~~~~~~~~~
might not用法 在 Belinda Chen Youtube 的最讚貼文
❤️产品信息区更新了一些产品的使用感受,供大家参考!
I N F O
❖❖❖ 想咨询新加坡房产信息的朋友可以联系天哥,电话:+65 81187058;微信:litianyang91
直达电梯:
茶包 00:56
咖啡豆 01:21
咖啡用具 01:51
厨房用品 05:11
生活用品 10:44
彩妆 13:19
文具 15:42
家居清洁 16:59
宠物用品 21:39
开箱产品信息:
❖chali蜜桃乌龙茶:https://s.click.taobao.com/jh98Ykv
还不错!茶味淡淡的,有蜜桃香味,不算很惊艳但是比起平均水平算是不错的茶包
❖fisher coffee焦糖咖啡豆:https://s.click.taobao.com/IG08Ykv
好喝!!!
❖fisher coffee经典意式咖啡豆:https://s.click.taobao.com/Ojp7Ykv
好喝!!!很香很浓郁,而且不苦,是我很喜欢的味道。crema也很漂亮,拉花很好看
❖CAFEDEKONA拉花杯:https://s.click.taobao.com/WkW7Ykv
好用!!
❖CAFEDE KONA笔式可夹指针温度计:https://s.click.taobao.com/gqS7Ykv
不太实用而且很碍事,不推荐
❖CAFEDE KONA原木 磨豆机清洁毛刷:https://s.click.taobao.com/LZK7Ykv
没啥用,可能之后用来当油刷了.......
❖Hugs冷泡玻璃瓶(要换购):https://s.click.taobao.com/qx77Ykv
普通的玻璃杯,没啥用不需要买
❖Hugs蜜桃白桃乌龙茶:https://s.click.taobao.com/9Bv6Ykv
还没尝过
❖Hugs芝士乌龙茶叶:https://s.click.taobao.com/4Ys6Ykv
一般,茶味还可以,很淡,芝士味基本只有喝过之后一点点回甘,不明显
❖niceone北欧创意甜甜圈封口零食夹:https://s.click.taobao.com/MUa6Ykv
好看就行了,不需要好用(不好用)
❖张小泉厨房剪刀:https://s.click.taobao.com/KoY6Ykv
很好用!便宜性价比高
❖张小泉鸡翅木筷子 十双装:https://s.click.taobao.com/d8K6Ykv
天哥反馈很好用,喜欢粗筷子的朋友可以买
❖进门入户门地垫:https://s.click.taobao.com/YBE6Ykv
好看!用起来跟其他地毯一样......
❖迷你蒜泥神器捣蒜器:https://s.click.taobao.com/Clr5Ykv
好用!!很省力,虽然每次都要洗,但是比洗刀子洗菜板还要洗手还要擦桌子方便多了。
❖SINLOY 曼特宁拼配咖啡豆:https://s.click.taobao.com/Hmj5Ykv
还没喝
❖SINLOY 蓝山风味/意式拼配咖啡豆:https://s.click.taobao.com/eRP5Ykv
还没喝
❖咖啡防滑填压转角垫:https://s.click.taobao.com/eVG5Ykv
不好用,咖啡粉会搞到地上,差点被皮皮吃掉了....
❖CREMA PRO 咖啡粉渣桶:https://s.click.taobao.com/rOG5Ykv
好用!
❖Flat white咖啡玻璃杯:https://s.click.taobao.com/wp45Ykv
好看!但是有瑕疵大家要谨慎。
❖调料盒,手机壳,玻璃油壶,滑锁保鲜袋,除湿袋,百洁布,酸豆角,镜片擦拭湿巾,内衣洗衣液,枕头喷雾,腮红,宠物梳子,宠物湿巾纸100抽,宠物除臭喷雾,宠物魔法漏斗尿垫,都是网易严选买的,大家可以去店铺找找:https://shop201041070.taobao.com/?spm=a230r.1.0.0.17a22011B5wxIr
这些东西没什么特别的,正常的日常用品,不踩雷
❖完美日记口红小黑钻116:https://s.click.taobao.com/qWC4Ykv
还可以,不是很日常
❖完美日记牛奶肌气垫BB霜:https://s.click.taobao.com/hYJ4Ykv
还不错,但是会暗沉
❖防蚊家用磁吸纱窗:https://s.click.taobao.com/Bz34Ykv
好用!!下次vlog拍给你们看
❖NOTE FOR秋冬限定手帐书衣(墨绿色):https://s.click.taobao.com/3Qe3Ykv
现在还是臭的,而且套上本子之后不太合适....不要买
❖朋友仔” 可调式书衣(白色):https://s.click.taobao.com/MUd3Ykv
好用好看!套上本子也很合身。
❖宝洁当妮Downy护衣留香珠:https://s.click.taobao.com/uMU3Ykv
好用!买!
❖妙洁一次性马桶刷:https://s.click.taobao.com/OVJ3Ykv
好用的,但是耗材还是有点费,一般般
❖Mistolin擦浴室水垢清洁剂:https://s.click.taobao.com/heC3Ykv
神器!!很好用!!擦完玻璃很透
❖维达厨房专用清洁湿纸巾:https://s.click.taobao.com/rFx2Ykv
好用!
❖心相印湿巾 厨房湿巾纸:https://s.click.taobao.com/6cy2Ykv
好用!
❖奥妙自然工坊樱花甜香柔护洗衣凝珠:https://s.click.taobao.com/Tkn2Ykv
好用!买!
❖贝妍纯色舒适棉质家居服:https://s.click.taobao.com/D0Z2Ykv
有点弹力,穿着还算舒服,但是棉质没有muji那么柔软,还行吧
❖新生儿电子秤婴儿体重秤(狗狗秤):https://s.click.taobao.com/JrB2Ykv
好用!
❖双面宠物窝:https://s.click.taobao.com/ww02Ykv
皮皮不喜欢
❖pidan狗玩具苹果核:https://s.click.taobao.com/Qij1Ykv
还没用
❖pidan狗狗沐浴露400ml:https://s.click.taobao.com/4ip1Ykv
还没用
❖pidan拔河狗玩具钥匙款:https://s.click.taobao.com/x3i1Ykv
还不错,会沾口水,但是很好洗
❖小佩PETKIT宠物车载安全带:https://s.click.taobao.com/nmD1Ykv
还没用
❖小佩PETKIT狗狗牵引绳胸背:https://s.click.taobao.com/JpP1Ykv
皮皮很不习惯,但是之后应该就好了
❖小佩PETKIT狗狗牵引绳自动伸缩遛狗绳:https://s.click.taobao.com/aw51Ykv
有点重,感觉噱头比较多,实际用起来跟其他的伸缩狗绳没什么区别
❖小佩宠物随行水杯:https://s.click.taobao.com/kty0Ykv
好用!
❖小佩宠物智能称重碗:https://s.click.taobao.com/ALz0Ykv
好用!
❖科德士宠物电动磨甲器:https://s.click.taobao.com/I6r0Ykv
好用!
❖法国维克耳漂宠物洗耳液:https://s.click.taobao.com/oDc0Ykv
好用!
❖狗狗护爪膏:https://s.click.taobao.com/12Y0Ykv
这个是送的,有点鸡肋感觉没什么用
❖特瑞仕狗狗牙刷牙膏套装:https://s.click.taobao.com/X3R0Ykv
还没用但是应该不错
❖雪貂留香狗狗牙膏:https://s.click.taobao.com/q6M0Ykv
还没用但是应该不错
❖狗狗玩具小鸭子:https://s.click.taobao.com/8mA0Ykv
还没给皮皮玩,但是应该很不错
❖狗狗玩具小狮子:https://s.click.taobao.com/3O70Ykv
皮皮超喜欢!
——————————
You might be interested
我常用的厨房锅具:https://www.youtube.com/watch?v=vFXynWTeT2A&t=13s
我所有的厨房小电器:https://www.youtube.com/watch?v=a7AhF12lxtM&t=8s
厨房清洁用品推荐:https://www.youtube.com/watch?v=fkqIwx25Vqo&t=11s
我的杯子收藏:https://www.youtube.com/watch?v=dJuIibdM0sA&t=1s
我的咖啡机测评:https://www.youtube.com/watch?v=szvnkDbNJC0&t=444s
我的咖喱饭食谱:https://www.youtube.com/watch?v=3W6Pxd2Tsuc&t=140s
我的私房调酒教程:https://www.youtube.com/watch?v=N8NSTygkKrs&t=18s
新加坡淘宝转运攻略:https://www.youtube.com/watch?v=Jd2JXCs5VYs
——————————
C O N T A C T
微博: BelindaChen_
B站: BelindaChen_
Instagram: belindachen0229
商业合作: belindachen0229@gmail.com
——————————
D I S C O U N T C O D E S
Daniel Wellington,使用折扣码BelindaChen, 可以获得85折
Teddy Blake:纽约的皮包包品牌,用折扣码TBBelinda20可以拿到20美元折扣
Hydroflux净水过滤器,使用折扣码belindachen,可以获得250新币现金折扣加两个淋浴过滤头,网站入口:https://www.czorganization.sg/promo-code
天哥祛痘印的医美诊所Ageless Medical,使用折扣码Belinda Chen,可以S$168体验原价S$360的Miracle Defense Facial,或者激光脱毛八折
我常用的海运公司:盛世领航,微信:q19780811,报我名字的话有小小的折扣
—————————
E Q U I P M E N T
相机: Canon M50
剪辑软件: Final Cut Pro X
——————————
D I S C L A I M E R
This video is not sponsored!
might not用法 在 Hak Me Youtube 的最佳解答
之前同大家喺Instagram Live傾計,大家都問我自從有玫瑰痤瘡之後,每朝嘅護膚程序。其實我朝早用嘅產品都好簡單,有玫瑰痤瘡之後就更家簡單,既然大家都有興趣知道,咁我就分享一下。另外,大家都好想睇多啲關於黑咪店既化妝品上面效果,趁我都要化妝,就用佢哋上面比大家睇下用法同效果。咁當然唔少得整靚整整齊嗰頭啦,我有示範埋我平日用直髪夾整頭set頭嘅程序,其實真係用好少時間,5至10分鐘就搞掂個頭喇! 希望呢條Morning Routine/ Get Ready With Me影片幫到大家啦,大家又睇得開心吖!
Hope you enjoy this #grwm so far and be sure to stayed tuned for more! I do two videos a week on Tuesday and Thursday at 9.00am (Hong Kong Time). Do subscribe as I'd love to see you again! Xoxo.
Product Featured:-
+ Not Just A In The Raw Konjac Face Sponge HK$125
Link: https://www.hakmebeauty.com/shop/brands/not-just-a/
+ Eternus-D Aqua Hydration Serum Therapy HK$520/35ml
Link: https://www.hakmebeauty.com/shop/brands/eternus-d/
+ Epionce Intensive Nourishing Cream HK$1200/50g
Link: https://www.hakmebeauty.com/shop/brands/epionce/
+ Epionce Ultra Shield Lotion SPF50 HK$440/75ml
Link: https://www.hakmebeauty.com/shop/brands/epionce/
+ Zkin Line Smoothing Serum HK$395/25ml
Link: https://www.hakmebeauty.com/shop/brands/zkin/
+ Esterel Phyto Lifting Eye Soft Care Gel HK$699/30ml
Link: https://www.hakmebeauty.com/shop/brands/esterel/
+ Beauty Blender HK$175
Link: https://www.hakmebeauty.com/shop/brands/beautyblender/
+ Sisley Sisleya Anti-Aging Foundation in 2.R
Review: https://tinyurl.com/yabokcgq
+ Makeup Revolution Conceal & Define in C8 HK$80
Link: https://www.hakmebeauty.com/shop/brands/makeup-revolution/
+ Sampure Minerals Instant Glow Mineral Loose Setting Powder in Natural HK$215
LInk: https://www.hakmebeauty.com/shop/brands/sampure/
+ Makeup Revolution Renaissance Glow HK$145
Link: https://www.hakmebeauty.com/shop/brands/makeup-revolution/
+ Makeup Revolution Liquid Highlighter in Liquid Champagne HK$120
Link: https://www.hakmebeauty.com/shop/brands/makeup-revolution/
+ Benefit Foolproof Brow Powder in No. 3
+ Makeup Revolution I Heart Makeup I Heart Chocolate - Rose Gold HK$170
Link: https://www.hakmebeauty.com/shop/brands/makeup-revolution/
+ theBalm Mr Write Eyeliner in Black HK$155
Link: https://www.hakmebeauty.com/shop/brands/thebalm/
+ theBalm Scuba Water Resistant Black Mascara HK$175
Link: https://www.hakmebeauty.com/shop/brands/thebalm/
+ Makeup Revolution Amazing Lipstick in Dazzle HK$18
Link: https://www.hakmebeauty.com/shop/brands/makeup-revolution/
+ Abyssian Abyssinian Oil Hair Serum HK$280/60ml
Link: https://www.hakmebeauty.com/shop/brands/abyssian/
+ WetBrush Sugar Skull - Purple Rose HK$115
Link: https://www.hakmebeauty.com/shop/brands/wetbrush/
+ Zuanzhuan CErasilk Woven Ceramic Styling Iron HK$1480
Link: https://www.hakmebeauty.com/shop/brands/zuanzhuan/
What Am I Wearing:-
Top: Top from a Korean store
Accessories: Apple Watch + Dinh Van Bracelet + C+ artier Love Bracelet SM (Blog: http://tinyurl.com/mgs7o2c) + DPT Endless Diamonds Bracelet (Link: http://bit.ly/2BQz11h)
♡黑咪店地址: http://www.hakmebeauty.com/store-locations
♡黑咪店Online: http://www.hakmebeauty.com/shop
♡黑咪店Instagram: @hakmebeauty
*************************************************************
Where To Find Me:-
♥ Blog: www.hakmebeauty.com
♥ Facebook: www.facebook.com/hakmebeauty
♥ Instagram: @iamhakme
♥ Snapchat: iamhakme
♥ Shop My Collection at Depop: @iamhakme
♥ Twitter: twitter.com/iamhakme
♥ Weibo: www.weibo.com/iamhakme
Disclaimer: This video is created and edited by me. All the content are my own thoughts. As always, all opinions are based on my experience and honest. Products are either purchased by me or for those which are sent by PR are marked with an “*”. For any collaboration with brands which involves monetary payment, “#Ad” will be in the title of the video so that you are aware of the collaboration. Some of the links used above might be affiliate links and please be aware that I will earn a % of commission if you decide to buy through the affiliate links.
might not用法 在 May 跟Might 差在哪?來一搞懂這些情態助動詞!(文法篇) 的推薦與評價
May 跟 Might 差在哪?來一搞懂這些情態助動詞!(文法篇) ... Spend, Pay, Cost, Take 用法 差在哪?來搞懂! 哥倫布Columbus. 哥倫布Columbus. ... <看更多>
might not用法 在 YouTube Data API Overview - Google Developers 的推薦與評價
Introduction
This document is intended for developers who want to write applications that interact with YouTube. It explains basic concepts of YouTube and of the API itself. It also provides an overview of the different functions that the API supports.
Before you startYou need a Google Account to access the Google API Console, request an API key, and register your application.
Create a project in the Google Developers Console and obtain authorization credentials so your application can submit API requests.
After creating your project, make sure the YouTube Data API is one of the services that your application is registered to use:
Go to the API Console and select the project that you just registered.
Visit the Enabled APIs page.
In the list of APIs, make sure the status is ON for the YouTube Data API v3.
If your application will use any API methods that require user authorization, read the authentication guide to learn how to implement OAuth 2.0 authorization.
Select a client library to simplify your API implementation.
Familiarize yourself with the core concepts of the JSON (JavaScript Object Notation) data format. JSON is a common, language-independent data format that provides a simple text representation of arbitrary data structures. For more information, see json.org.
Resources and resource types
A resource is an individual data entity with a unique identifier. The table below describes the different types of resources that you can interact with using the API.
Resources
activity
Contains information about an action that a particular user has taken on the YouTube site. User actions that are reported in activity feeds include rating a video, sharing a video, marking a video as a favorite, and posting a channel bulletin, among others.
channel
Contains information about a single YouTube channel.
channelBanner
Identifies the URL to use to set a newly uploaded image as the banner image for a channel.
channelSection
Contains information about a set of videos that a channel has chosen to feature. For example, a section could feature a channel's latest uploads, most popular uploads, or videos from one or more playlists.
guideCategory
Identifies a category that YouTube associates with channels based on their content or other indicators, such as popularity. Guide categories seek to organize channels in a way that makes it easier for YouTube users to find the content they're looking for. While channels could be associated with one or more guide categories, they are not guaranteed to be in any guide categories.
i18nLanguage
Identifies an application language that the YouTube website supports. The application language can also be referred to as a UI language.
i18nRegion
Identifies a geographic area that a YouTube user can select as the preferred content region. The content region can also be referred to as a content locale.
playlist
Represents a single YouTube playlist. A playlist is a collection of videos that can be viewed sequentially and shared with other users.
playlistItem
Identifies a resource, such as a video, that is part of a playlist. The playlistItem resource also contains details that explain how the included resource is used in the playlist.
search result
Contains information about a YouTube video, channel, or playlist that matches the search parameters specified in an API request. While a search result points to a uniquely identifiable resource, like a video, it does not have its own persistent data.
subscription
Contains information about a YouTube user subscription. A subscription notifies a user when new videos are added to a channel or when another user takes one of several actions on YouTube, such as uploading a video, rating a video, or commenting on a video.
thumbnail
Identifies thumbnail images associated with a resource.
video
Represents a single YouTube video.
videoCategory
Identifies a category that has been or could be associated with uploaded videos.
watermark
Identifies an image that displays during playbacks of a specified channel's videos. The channel owner can also specify a target channel to which the image links as well as timing details that determine when the watermark appears during video playbacks and then length of time it is visible.
Note that, in many cases, a resource contains references to other resources. For example, a playlistItem
resource's snippet.resourceId.videoId
property identifies a video resource that, in turn, contains complete information about the video. As another example, a search result contains either a videoId
, playlistId
, or channelId
property that identifies a particular video, playlist, or channel resource.
The following table shows the most common methods that the API supports. Some resources also support other methods that perform functions more specific to those resources. For example, the videos.rate
method associates a user rating with a video, and the thumbnails.set
method uploads a video thumbnail image to YouTube and associates it with a video.
Operations
list
Retrieves (
GET
) a list of zero or more resources.insert
Creates (
POST
) a new resource.update
Modifies (
PUT
) an existing resource to reflect data in your request.delete
Removes (
DELETE
) a specific resource.The API currently supports methods to list each of the supported resource types, and it supports write operations for many resources as well.
The table below identifies the operations that are supported for different types of resources. Operations that insert, update, or delete resources always require user authorization. In some cases, list
methods support both authorized and unauthorized requests, where unauthorized requests only retrieve public data while authorized requests can also retrieve information about or private to the currently authenticated user.
Supported Operations
list
insert
update
delete
activity
caption
channel
channelBanner
channelSection
comment
commentThread
guideCategory
i18nLanguage
i18nRegion
playlist
playlistItem
search result
subscription
thumbnail
video
videoCategory
watermark
Quota usage
The YouTube Data API uses a quota to ensure that developers use the service as intended and do not create applications that unfairly reduce service quality or limit access for others. All API requests, including invalid requests, incur at least a one-point quota cost. You can find the quota available to your application in the API Console.
Projects that enable the YouTube Data API have a default quota allocation of 10,000 units per day, an amount sufficient for the overwhelming majority of our API users. Default quota, which is subject to change, helps us optimize quota allocations and scale our infrastructure in a way that is more meaningful to our API users. You can see your quota usage on the Quotas page in the API Console.
Note: If you reach the quota limit, you can request additional quota by
completing the Quota extension
request form for YouTube API Services.
Google calculates your quota usage by assigning a cost to each request. Different types of
operations have different quota costs. For example:
A read operation that retrieves a list of resources -- channels, videos, playlists -- usually
costs 1 unit.
A write operation that creates, updates, or deletes a resource usually has costs
50
units.A search request costs
100
units.A video upload costs
1600
units.The Quota costs for API requests table shows the
quota cost of each API method. With these rules in mind, you can estimate the number of requests
that your application could send per day without exceeding your quota.
The API allows, and actually requires, the retrieval of partial resources so that applications avoid transferring, parsing, and storing unneeded data. This approach also ensures that the API uses network, CPU, and memory resources more efficiently.
The API supports two request parameters, which are explained in the following sections, that enable you to identify the resource properties that should be included in API responses.
The part
parameter identifies groups of properties that should be returned for a resource.
The fields
parameter filters the API response to only return specific properties within the requested resource parts.
part
parameterThe part
parameter is a required parameter for any API request that retrieves or returns a resource. The parameter identifies one or more top-level (non-nested) resource properties that should be included in an API response. For example, a video
resource has the following parts:
snippet
contentDetails
fileDetails
player
processingDetails
recordingDetails
statistics
status
suggestions
topicDetails
All of these parts are objects that contain nested properties, and you can think of these objects as groups of metadata fields that the API server might (or might not) retrieve. As such, the part
parameter requires you to select the resource components that your application actually uses. This requirement serves two key purposes:
It reduces latency by preventing the API server from spending time retrieving metadata fields that your application doesn't use.
It reduces bandwidth usage by reducing (or eliminating) the amount of unnecessary data that your application might retrieve.
Over time, as resources add more parts, these benefits will only increase since your application will not be requesting newly introduced properties that it doesn't support.
How to use thefields
parameterThe fields
parameter filters the API response, which only contains the resource parts identified in the part
parameter value, so that the response only includes a specific set of fields. The fields
parameter lets you remove nested properties from an API response and thereby further reduce your bandwidth usage. (The part
parameter cannot be used to filter nested properties from a response.)
The following rules explain the supported syntax for the fields
parameter value, which is loosely based on XPath syntax:
Use a comma-separated list (fields=a,b
) to select multiple fields.
Use an asterisk (fields=*
) as a wildcard to identify all fields.
Use parentheses (fields=a(b,c)
) to specify a group of nested properties that will be included in the API response.
Use a forward slash (fields=a/b
) to identify a nested property.
In practice, these rules often allow several different fields
parameter values to retrieve the same API response. For example, if you want to retrieve the playlist item ID, title, and position for every item in a playlist, you could use any of the following values:
fields=items/id,playlistItems/snippet/title,playlistItems/snippet/position
fields=items(id,snippet/title,snippet/position)
fields=items(id,snippet(title,position))
Note: As with all query parameter values, the fields
parameter value must be URL encoded. For better readability, the examples in this document omit the encoding.
The examples below demonstrate how you can use the part
and fields
parameters to ensure that API responses only include the data that your application uses:
Example 1 returns a video resource that includes four parts as well as
kind
and etag
properties.Example 2 returns a video resource that includes two parts as well as
kind
and etag
properties.Example 3 returns a video resource that includes two parts but excludes
kind
and etag
properties.Example 4 returns a video resource that includes two parts but excludes
kind
and etag
as well as some nested properties in the resource's snippet
object.Example 1
URL: https://www.googleapis.com/youtube/v3/videos?id=7lCDEYXw3mM&key=YOUR_API_KEY
&part=snippet,contentDetails,statistics,statusDescription: This example retrieves avideo
resource and identifies several
resource parts that should be included in the API response.API response:
{
"kind": "youtube#videoListResponse",
"etag": "\"UCBpFjp2h75_b92t44sqraUcyu0/sDAlsG9NGKfr6v5AlPZKSEZdtqA\"",
"videos": [
{
"id": "7lCDEYXw3mM",
"kind": "youtube#video",
"etag": "\"UCBpFjp2h75_b92t44sqraUcyu0/iYynQR8AtacsFUwWmrVaw4Smb_Q\"",
"snippet": {
"publishedAt": "2012-06-20T22:45:24.000Z",
"channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
"title": "Google I/O 101: Q&A On Using Google APIs",
"description": "Antonio Fuentes speaks to us and takes questions on working with Google APIs and OAuth 2.0.",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/hqdefault.jpg"
}
},
"categoryId": "28"
},
"contentDetails": {
"duration": "PT15M51S",
"aspectRatio": "RATIO_16_9"
},
"statistics": {
"viewCount": "3057",
"likeCount": "25",
"dislikeCount": "0",
"favoriteCount": "17",
"commentCount": "12"
},
"status": {
"uploadStatus": "STATUS_PROCESSED",
"privacyStatus": "PRIVACY_PUBLIC"
}
}
]
}
Example 2
URL: https://www.googleapis.com/youtube/v3/videos?id=7lCDEYXw3mM&key=YOUR_API_KEY
&part=snippet,statisticsDescription: This example modifies thepart
parameter value so that the
contentDetails
andstatus
properties are not included
in the response.API response:
{
"kind": "youtube#videoListResponse",
"etag": "\"UCBpFjp2h75_b92t44sqraUcyu0/sDAlsG9NGKfr6v5AlPZKSEZdtqA\"",
"videos": [
{
"id": "7lCDEYXw3mM",
"kind": "youtube#video",
"etag": "\"UCBpFjp2h75_b92t44sqraUcyu0/iYynQR8AtacsFUwWmrVaw4Smb_Q\"",
"snippet": {
"publishedAt": "2012-06-20T22:45:24.000Z",
"channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
"title": "Google I/O 101: Q&A On Using Google APIs",
"description": "Antonio Fuentes speaks to us and takes questions on working with Google APIs and OAuth 2.0.",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/hqdefault.jpg"
}
},
"categoryId": "28"
},
"statistics": {
"viewCount": "3057",
"likeCount": "25",
"dislikeCount": "0",
"favoriteCount": "17",
"commentCount": "12"
}
}
]
}
Example 3
URL: https://www.googleapis.com/youtube/v3/videos?id=7lCDEYXw3mM&key=YOUR_API_KEY
&part=snippet,statistics&fields=items(id,snippet,statistics)Description: This example adds thefields
parameter to remove all
kind
andetag
properties from the API response.API response:
{
"videos": [
{
"id": "7lCDEYXw3mM",
"snippet": {
"publishedAt": "2012-06-20T22:45:24.000Z",
"channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
"title": "Google I/O 101: Q&A On Using Google APIs",
"description": "Antonio Fuentes speaks to us and takes questions on working with Google APIs and OAuth 2.0.",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/7lCDEYXw3mM/hqdefault.jpg"
}
},
"categoryId": "28"
},
"statistics": {
"viewCount": "3057",
"likeCount": "25",
"dislikeCount": "0",
"favoriteCount": "17",
"commentCount": "12"
}
}
]
}
Example 4
URL: https://www.googleapis.com/youtube/v3/videos?id=7lCDEYXw3mM&key=YOUR_API_KEY
&fields=items(id,snippet(channelId,title,categoryId),statistics)&part=snippet,statisticsDescription: This example modifies thefields
parameter from example 3
so that in the API response, each video resource'ssnippet
object only includes thechannelId
,title
,
andcategoryId
properties.API response:
{
"videos": [
{
"id": "7lCDEYXw3mM",
"snippet": {
"channelId": "UC_x5XG1OV2P6uZZ5FSM9Ttw",
"title": "Google I/O 101: Q&A On Using Google APIs",
"categoryId": "28"
},
"statistics": {
"viewCount": "3057",
"likeCount": "25",
"dislikeCount": "0",
"favoriteCount": "17",
"commentCount": "12"
}
}
]
}
Optimizing performance
Using ETags
ETags, a standard part of the HTTP protocol, allow applications to refer to a specific version of a particular API resource. The resource could be an entire feed or an item in that feed. This functionality supports the following use cases:
Caching and conditional retrieval – Your application can cache API resources and their ETags. Then, when your application requests a stored resource again, it specifies the ETag associated with that resource. If the resource has changed, the API returns the modified resource and the ETag associated with that version of the resource. If the resource has not changed, the API returns an HTTP 304 response (Not Modified
), which indicates that the resource has not changed. Your application can reduce latency and bandwidth usage by serving cached resources in this manner.
The client libraries for Google APIs differ in their support of ETags. For example, the JavaScript client library supports ETags via a whitelist for allowed request headers that includes If-Match
and If-None-Match
. The whitelist allows normal browser caching to occur so that if a resource's ETag has not changed, the resource can be served from the browser cache. The Obj-C client, on the other hand, does not support ETags.
Protecting against inadvertent overwrites of changes – ETags help to ensure that multiple API clients don't inadvertently overwrite each other's changes. When updating or deleting a resource, your application can specify the resource's ETag. If the ETag doesn't match the most recent version of that resource, then the API request fails.
Using ETags in your application provides several benefits:
The API responds more quickly to requests for cached but unchanged resources, yielding lower latency and lower bandwidth usage.Your application will not inadvertently overwrite changes to a resource that were made from another API client.
The Google APIs Client Library for JavaScript supports If-Match
and If-None-Match
HTTP request headers, thereby enabling ETags to work within the context of normal browser caching.
Using gzip
You can also reduce the bandwidth needed for each API response by enabling gzip compression. While your application will need additional CPU time to uncompress API responses, the benefit of consuming fewer network resources usually outweighs that cost.
To receive a gzip-encoded response you must do two things:
Set the Accept-Encoding
HTTP request header to gzip
.
Modify your user agent to contain the string gzip
.
The sample HTTP headers below demonstrate these requirements for enabling gzip compression:
Accept-Encoding: gzip
User-Agent: my program (gzip)
... <看更多>
might not用法 在 陳老師英語教室- May、 might的用法有甚麼分別 ... - Facebook 的推薦與評價
說過去的事,假如還在猜測,可能性未過去,用may( not) have或語氣更不肯定的might( not) have都可以;但假如結果已知,可能性已成過去,則只能用過去式的might( not ... ... <看更多>