.
幸福睡眠
Photo: Teddy Tzeng 曾崇倫
Model: @qqqa163076
Translation: @benkongenglish
.
偶爾聊天中聽朋友說失眠 惡夢
我感到心疼 卻也無能為力
畢竟誰不希望高枕無憂呢?
.
聽說睡眠是充電的途徑
也是大腦整理記憶和思緒的時刻
別讓生活的壓力 張狂的情緒侵佔重要的睡眠
運用冥想 透過轉念 看開世事
大腦清淨了 睡眠就容易了
.
工欲善其事 必先利其器
如果你無慮無念 只欠缺好枕的枕頭
好的枕頭能支撐頸部 穩定頭部
試試QTACE捕夢枕 @qtace.tw
讓QTACE捕夢枕給你一個美好的夜晚
.
MIT 60年羽毛工廠
日本溫泉御用羽毛枕
3種高度枕頭自由組合搭配
.
https://bit.ly/3qKuS9e
#qtace睡覺比賽 #sleeping
#熟睡的秘密 #溫泉捕夢枕 #6種高度8種用法
.
My heart aches upon hearing my friends talking about insomnia and having bad dreams but there’s nothing I can do.
Who doesn’t want to have some good sleep?
.
Sleeping is charging our brains.
The brain organises memories and emotions during sleep.
Meditate and look at things at different angles to avoid letting stress and extreme emotions invade the precious sleep time
Sleeping gets easier if the brain is free of stray thoughts.
.
Good tools are prerequisite to the success.
If you have your thoughts in check but just lack a good pillow,
Try QTACE Dreamcatcher @qtace.tw
QTACE Dreamcatcher is able to make your night a good one with support to the neck and stabilisation to your head.
.
MIT feather factory for 60 years.
Official feather pillow to Japanese hotspring
Mix and match combo with 3 different pillow heights
同時也有3部Youtube影片,追蹤數超過47萬的網紅Hapa 英会話,也在其Youtube影片中提到,「Suck」は本来「吸う」を意味しますが、ネイティブの日常会話では、スラングとしても非常に頻繁に使われている単語なので、今日はその用法について触れていこうと思います。 📝今日のレッスンのまとめ📝 =================================== 1. Suck(ひどい、最悪)...
「just in time用法」的推薦目錄:
- 關於just in time用法 在 Yilianboy Facebook
- 關於just in time用法 在 黃浩銘 Raphael Wong Facebook
- 關於just in time用法 在 Tommy Cheung 張秀賢 Facebook
- 關於just in time用法 在 Hapa 英会話 Youtube
- 關於just in time用法 在 Hak Me Youtube
- 關於just in time用法 在 Smart Travel Youtube
- 關於just in time用法 在 just in time中文2023-在Facebook/IG/Youtube上的焦點新聞和 ... 的評價
- 關於just in time用法 在 just in time用法的推薦與評價,FACEBOOK、PTT、YOUTUBE 的評價
- 關於just in time用法 在 just in time用法的推薦與評價,FACEBOOK、PTT、YOUTUBE 的評價
- 關於just in time用法 在 Magic Box-however 的用法& just adv. 只是;僅僅- YouTube 的評價
- 關於just in time用法 在 YouTube Data API Overview - Google for Developers 的評價
just in time用法 在 黃浩銘 Raphael Wong Facebook 八卦
毋忘五大訴求 公民抗命有理
—10‧20九龍遊行陳情書
(案件編號:DCCC 535/2020)
——————————————————
「毋忘初衷,活在愛和真實之中」
撐阿銘,即訂閱Patreon:
patreon.com/raphaelwong
—————————————————
胡法官雅文閣下:
2012年,我第一次站在法庭上承認違反「公安惡法」,述說對普選的盼望,批評公安惡法不義,並因公民抗命的緣故,甘心樂意接受刑罰。當年我說,如果小圈子選舉沒有被廢除,惡法沒有消失,我依然會一如故我,公民抗命,並且我相信將會有更多學生和市民加入這個行列。想不到時至今日,普選仍然遙遙無期,我亦再次被帶到法庭接受審判,但只是短短7年,已經有數十萬計的群眾公民抗命,反對暴政。今日,我承認違反「未經批准的政府」所訂立「未經批准的惡法」之下的「未經批准集結」罪,我不打算尋求法庭的憐憫,但請容許我佔用法庭些微時間陳情,讓法庭在判刑前有全面考慮。
暴力之濫觴
在整個反修例運動如火如荼之際,我正承擔另一宗公民抗命案件的刑責。雖然身在獄中,但仍然心繫手足。我在獄中電視機前見證6月9日、6月16日及8月18日三次百萬港人大遊行,幾多熱愛和平的港人冒天雨冒彈雨走上街頭,抗議不義惡法,今日關於10月20日的案件,亦是如此。可能有人會問,政府已在6月暫緩修例,更在9月正式撤回修例,我等仍然繼續示威,豈非無理取鬧?我相信法官閣下肯定聽過「遲來的正義並非正義」(Justice delayed is justice denied)這句格言。當過百萬群眾走上街頭,和平表達不滿的時候,林鄭政府沒有理睬,反而獨行獨斷,粗暴踐踏港人的意願,結果製造出後來連綿不絕的爭拗,甚至你死我活的對抗。經歷眾多衝突痛苦之後,所謂暫緩撤回,已經微不足道,我們只是更加清楚:沒有民主,就連基本人權都不會擁有!
在本案之中,雖然我們都沒有鼓動或作出暴力行為,但根據早前8‧18及10‧1兩宗案件,相信在控方及法庭眼中,案發當日的暴力事件仍然可以算在我們頭上,如此,我有必要問:如果香港有一個公平正義的普及選舉,人民可以在立法會直接否決他們不認可的法律,試問2019年的暴力衝突可以從何而來呢?如果我們眼見的暴力是如此十惡不赦,那麼我們又如何看待百萬人遊行後仍然堅持推行惡法的制度暴力呢?如果我們不能接受人民暴力反抗,那麼我們是否更加不能對更巨大更壓逼的制度暴力沈默不言?真正且經常發生的暴力,是漠視人民訴求的暴力,是踐踏人民意見的暴力,是剝奪人民表達權利的暴力。真正憎恨暴力,痛恨暴力的人,不可能一方面指摘暴力反抗,又容忍制度暴力。如果我需要承擔和平遊行引發出來的暴力事件的刑責,那麼誰應該承擔施政失敗所引發出來的社會騷亂的罪責呢?
社會之病根
對於法庭而言,可能2019年所發生的事情只是一場社會騷亂,務必追究違法者個人責任。然而,治亂治其本源,醫病醫其病根,我雖然公民抗命,刻意違法,控方把我帶上法庭,但我卻不應被理解為一個「犯罪個體」。2019年所發生的事情,並不是我一個人或我們這幾位被告可以促成,社會問題的癥結不是「犯罪份子」本身,而是「犯罪原因」。我明白「治亂世用重典」的道理,但如果「殺雞儆猴」是解決方法,就不會在2016年發生旺角騷亂及2017年上訴庭對示威者施以重刑後,2019年仍然會爆發出更大規模的暴力反抗。
如果不希望社會動亂,就必須正本清源,逐步落實「五大訴求」,從根本上改革,挽回民心。2019年反修例運動,其實只是2014年雨傘運動的延續而已,縱使法庭可能認為兩個運動皆是「一股歪風」所引起,但我必須澄清,兩個運動的核心就是追求民主普選,人民當家作主。在2019年11月24日區議會選舉這個最類近全民普選的選舉中,接近300萬人投票,民主派大勝,奪得17個區議會主導權,這就是整個反修例運動的民意,民意就是反對政府決策,反對制度暴力,反對推行惡法,不容爭辯,不辯自明。我們作為礦場裡的金絲雀,多次提醒政府撤回修法,並從根本上改革制度,而在10月20日的九龍遊行當然是反映民意的平台契機。如今,法庭對我們施加重刑,其實只不過是懲罰民意,將金絲雀困在鳥籠之內,甚至扼殺於鼓掌之中,窒礙表達自由。
堅持之重要
大運動過後的大鎮壓,使我們失去《蘋果日報》,失去教協,失去民陣,不少民主派領袖以及曾為運動付出的手足戰友都囚於獄中,不少曾經熱情投入運動的朋友亦因《國安法》的威脅轉為低調,新聞自由示威自由日漸萎縮,公民社會受到沈重打擊,我亦失去不少摯友,有感傷孤獨的時候,但我仍然相信,2019年香港人的信念,以及所展現人類的光輝持久未變。我不會忘記百萬人民冒雨捱熱抗拒暴政,抵制惡法,展現我們眾志成城;我不會忘記人潮紅海,讓道救護車,展現我們文明精神;我不會忘記年青志士直接行動反對苛政,捨身成仁,展現我們膽色勇氣;我不會忘記銀髮一族走上街頭保護年青人,展現我們彼此關懷;我不會忘記「五大訴求」,不會忘記2019年區議會選舉,展現我們有理有節。
法官閣下,我對於當日的所作所為,不感羞恥,毫無悔意。我能夠在出獄後與群眾同行一路,與戰友同繫一獄,實是莫大榮幸。若法治失去民主基石,將使法庭無奈地接受專制政權所訂立解釋的法律限制,隨時變成政治工具掃除異見,因此爭取民主普選,建設真正法治,追求公平正義,仍然是我的理想。在這條路上,如有必要,我仍然會公民抗命,正如終審法院海外非常任法官賀輔明(Lord Hoffmann)所言,發自良知的公民抗命有悠久及光榮的傳統,歷史將證明我們是正確的。我期望,曾與我一起遊行抗命的手足戰友要堅持信念,在艱難歲月裡毋忘初衷,活在愛和真實之中。
最後,如9年前一樣,我想借用美國民權領袖馬丁路德金牧師的一番話對我們的反對者說:「我們將以自己忍受苦難的能力,來較量你們製造苦難的能力。我們將用我們靈魂的力量,來抵禦你們物質的暴力。對我們做你們想做的事吧,我們仍然愛你們。我們不能憑良心服從你們不公正的法律,因為拒惡與為善一樣是道德責任。將我們送入監獄吧,我們仍然愛你們。」(We shall match your capacity to inflict suffering by our capacity to endure suffering. We shall meet your physical force with soul force. Do to us what you will, and we shall continue to love you. We cannot in all good conscience obey your unjust laws because noncooperation with evil is as much a moral obligation as is cooperation with good. Throw us in jail and we shall still love you.)
願慈愛的主耶穌賜我們平安,與我和我一家同在,與法官閣下同在,與香港人同在。沒有暴徒,只有暴政;五大訴求,缺一不可!願榮耀歸上帝,榮光歸人民!
第五被告
黃浩銘
二零二一年八月十九日
Lest we forget the five demands: civil disobedience is morally justified
- Statement on 10‧20 Kowloon Rally
(Case No.: DCCC 535/2020)
Your Honour Judge Woodcock
In 2012, I stood before the court and admitted to violating the "Public Security Evil Law". I expressed my hope for universal suffrage, criticized the evil law as unjust, and willingly accepted the penalty for civil disobedience. Back then, I said that if the small-circle election had not been abolished and the draconian law had not disappeared, I would still be as determined as I was, and I believe that more students and citizens would join this movement. Today, universal suffrage is still a long way off, and I have been brought before the court again for trial. But in just seven years, hundreds of thousands of people have already risen up in civil disobedience against tyranny. Today, I plead guilty to "unauthorised assembly" under an unapproved evil law enacted by an unauthorised government. I do not intend to seek the court's mercy, but please allow me to take up a little time in court to present my case so that the court can consider all aspects before sentencing me.
The roots of violence
At the time when the whole anti-extradition law movement was in full-swing, I was taking responsibility for another civil disobedience case. Although I was in prison, my heart was still with the people. I witnessed the three million-person rallies on 9 June, 16 June and 18 August on television in prison, when many peace-loving people took to the streets despite the rain and bullets, to protest against unjust laws. Some people may ask, "The Government has already suspended the legislative amendments in June and formally withdrew the bill in September, but we are still demonstrating, are we not being unreasonable?" I am sure your Honour has heard of the adage "Justice delayed is justice denied". When more than a million people took to the streets to express their discontent peacefully, the Lam administration ignored them and instead acted arbitrarily, brutally trampling on the wishes of the people of Hong Kong, resulting in endless arguments and even confrontations. After so many conflicts and painful experiences, the so-called moratorium is no longer meaningful. We only know better: without democracy, we cannot even have basic human rights!
In this case, although we did not instigate or commit acts of violence, I believe that in the eyes of the prosecution and the court, the violence on the day of the incident can still be counted against us, based on the August 18 and October 1 case. And now I must ask - If Hong Kong had a fair and just universal election, and the public could directly veto laws they did not approve of at the Legislative Council, then how could the violent clashes of 2019 have come about? If the violence we see is so heinous, how do we feel about the institutional violence that insists on the imposition of draconian laws even after millions of people have taken to the streets? If we cannot accept violent rebellion, how can we remain silent in the face of even greater and more oppressive institutional violence? The true and frequent violence is the kind of violence that ignores people's demands, that tramples on their opinions, that deprives them of their right to express themselves. People who truly hate violence and abhor it cannot accuse violent resistance on the one hand and tolerate institutional violence on the other. If I have to bear the criminal responsibility for the violence caused by the peaceful demonstration, then who should bear the criminal responsibility for the social unrest caused by failed administration?
The roots of society's problems
From a court's point of view, it may be that what happened in 2019 was just a series of social unrest, and that those who broke the law must be held personally accountable. What happened in 2019 was not something that I alone or the defendants could have made possible, and the crux of the social problem was not the 'criminals' but the 'causes of crime'. I understand the concept of " applying severe punishment to a troubled world", but if "decimation" was really the solution, there would not have been more violent rebellions in 2019 after the Mongkok "riot" in 2016 and the heavy sentences handed down to protesters by the Court of Appeal in 2017.
If we do not want social unrest, we must get to the root of the problem and implement the "five demands" step by step, so as to achieve fundamental reforms and win back the hearts of the people. 2019's anti-revision movement is indeed a continuation of 2014's Umbrella Movement, and even though the court may think that both movements are caused by a "perverse wind", I must clarify that the core of both movements is the pursuit of democracy and universal suffrage, and the people being the masters of their own house. In the District Council election on 24 November 2019, which is the closest thing to universal suffrage, nearly 3 million people voted, and the democratic camp won a huge victory, winning majority in 17 District Councils. As canaries in the monetary coal mine, we have repeatedly reminded the government to withdraw the extradition bill and fundamentally reform the system, and the march in Kowloon on 20 October was certainly an opportunity to reflect public opinion. Now, by imposing heavy penalties on us, the court is only punishing public opinion, trapping the canaries in a birdcage, or even stifling them in the palm of their hands, suffocating the freedom of expression.
The importance of persistence
As a result of the crackdown after the mass movement, we lost Apple Daily, the Hong Kong Professional Teachers' Union, and the Civil Human Rights Front. Many of our democratic leaders and comrades who had contributed to the movement were imprisoned, and many of our friends who had been passionately involved in the movement had been forced to lay low under the threat of the National Security Law. I still believe that the faith of Hong Kong people and the glory of humanity seen in 2019 will remain unchanged. I will never forget the millions of people who braved the rain and the heat to resist tyranny and evil laws, demonstrating our unity of purpose; I will never forget the crowds of people who gave way to ambulances, demonstrating our civility; I will never forget the young people who sacrificed their lives, demonstrating our courage and bravery; I will never forget the silver-haired who took to the streets to protect the youth, demonstrating our care for each other; I will never forget the "five demands" and the 2019 District Council election, demonstrating our rationality and decency.
Your Honour, I have nothing to be ashamed of and no remorse for what I did on that day. It is my great honour to be in prison with my comrades and to be able to walk with the public after my release. If the rule of law were to lose its democratic foundation, the courts would have no choice but to accept the legal restrictions set by the autocratic regime and become a political tool to eliminate dissent at any time. As Lord Hoffmann, a non-permanent overseas judge of the Court of Final Appeal, said, civil disobedience from the conscience has a long and honourable tradition, and history will prove us right. I hope that my comrades in arms who walked with me in protests will keep their faith and live in love and truth in the midst of this difficult time.
Finally, as I did nine years ago, I would like to say something to those who oppose us, borrowing the words of American civil rights leader Reverend Martin Luther King: "We shall match your capacity to inflict suffering by our capacity to endure suffering. We shall meet your physical force with soul force. Do to us what you will, and we shall continue to love you. We cannot in all good conscience obey your unjust laws because noncooperation with evil is as much a moral obligation as is cooperation with good. Throw us in jail and we shall still love you."
Peace be with me and my family, with Your Honour, and with the people of Hong Kong. There are no thugs, only tyranny; five demands, not one less! To god be the glory and to people be the glory!
The Fifth Defendant
Wong Ho Ming
19 August 2021
just in time用法 在 Tommy Cheung 張秀賢 Facebook 八卦
眾籌支付誹謗案相關費用
還原721襲擊真相
Crowdfunding Campaign for paying fees in the defamation case
Restore the truth of 721 Yuen Long Attack
2019年7月21日,相信不少人對當晚元朗所發生的事仍舊歷歷在目,亦改變了不少人的一生。我在當晚於手機、電視目擊住於元朗發生的一切,因而決定挺身而出,再次躺進這趟政治渾水,參與區議會選舉,為掃除建制惡勢力出一分力。然而,即使當上區議員,政治打壓令我們工作舉步為艱,我亦在近日收到昔日選舉對手的誹謗案入稟狀。
在此艱困的狀態下,我沒有退讓的空間,只能選擇迎難而上,將事實在法庭當中陳述。我會善用法庭審訊的機會,將有關721事件的真相在法庭審訊羅列出來,將其作為事實核證的一大平台。我亦會把握機會在傳召證人和盤問過程,將721事件的種種疑團,包括事前流傳的信息真確性、白衣暴徒的關係網、政商關係網絡於審訊中一一揭露,真相愈辯愈明。
作為獨立民主派,我並無任何組織支持,亦沒有昔日選舉對手的龐大財政資源。由於法律援助並不涵蓋誹謗案件,我需要一力承擔有關法律經費(包括聘請律師與大律師的費用、法庭相關費用等)。在面對沉重的財政壓力下,我需要向大家籌募訴訟的經費,以應付相關的開支,懇請大家能夠鼎力支持。我將會利用籌募到的款項,用作法律費用和眾籌平台開支之外,同時亦會聘請一名員工專責搜集721證據及重溫不同媒體片段,以助法庭審訊和其他721事件民間調查工作。
假如我最後獲賠訟費或有盈餘,我會將有關餘額和盈餘撥捐予抗爭者支援組織。
A lot of us still relive what happened in Yuen Long on July 21, 2019, as it changed the lives of countless. After witnessing what happened there that evening via live streams on my phone and television, I chose to step forward and, again, devote myself to the political orbit. I thus participated in the district council election and committed to the eradication of the pro-establishment evil forces in the legislature. However, political repression still exists in the district council and hurdles our work - I just received the summons of the defamation suit filed by my former opponent in the election.
My only way out in this time of adversity is to present the facts in court, where I can make use of the court trial as a fact verification platform to state the truth of July 21. I will also seize the opportunity in the process of subpoena and testimony to expose the qualms of July 21, including the authenticity of the information circulated beforehand, the network of the white-shirted thugs, and the complex business-government relationships.
As an independent democrat, I do not have any organizational support, nor do I have vast financial resources as my late opponent does. Besides, since the legal aid scheme does not cover defamation cases, I must pay the legal expenses, including the cost of hiring lawyers and barristers and court fees, on my own. In the face of tremendous financial pressure, I must plead for help by raising funds for litigation from you to meet the legal expenses. I will use the funds for the legal services required and hiring an agent to collect evidence and review media clips of July 21 to help court trials and other private investigations concerning the incident.
If there is a surplus in the final reimbursement of litigation costs, I will donate the remaining balance to the organisation or fund supporting activists.
眾籌目標:80萬
分配如下:
律師及大律師聘請費用:50萬
眾籌平台費用:約5萬
聘請1名員工跟進721檔案:25萬
我將會每3個月發佈財政報告,說明有關開支的使用情況。
Crowdfunding Target: HKD 800,000
Distribution:
Solicitor and Counsel Fee: HKD 500,000
Crowdfunding Platform Fee: Around HKD 50,000
Employ a staff to follow the documentaries and records on 721 attack: HKD 250,000
I will announce the financial report of this fundraising project every three months to explain the expenditure of the funding.
眾籌平台連結:
http://gogetfunding.com/tommycheungdefamation/
銀行帳戶:恆生銀行290-580935-882
轉數快(FPS)識別碼:2904647
just in time用法 在 Hapa 英会話 Youtube 的評價
「Suck」は本来「吸う」を意味しますが、ネイティブの日常会話では、スラングとしても非常に頻繁に使われている単語なので、今日はその用法について触れていこうと思います。
📝今日のレッスンのまとめ📝
===================================
1. Suck(ひどい、最悪) 0:45
・That restaurant has a nice vibe, but the food sucks. (あのレストランは雰囲気はいいけど、料理がひどい)
・I don't get what the hype is all about. I thought that movie sucked.(なんであの映画がすごく話題になっているのかが分からない。僕はひどかったと思ったんだけどね)
・My job sucks. It doesn't pay well and I have to work long hours.(私の仕事は最悪です。給料は低いし、長時間働かないといけない)
2. That sucks (それはひどい、それは残念だ) 1:42
英検を受けた友達が・・・
A: I just needed one more point to pass! It's so frustrating.(合格するのに1点だけ足りなかった。悔しいよ)
B: Ah man, that sucks.(あー、それは残念だね)
留学する予定だった友達が・・・
A: I was supposed to study abroad in Vancouver this year, but it got canceled because of the coronavirus.今年はバンクーバーに留学する予定だったんだけど、コロナで中止になっちゃったよ。
B: Are you serious? That sucks. Hopefully, you can go next year.(マジで?それは最悪だ。来年いけるといいね)
ハワイ旅行から帰ってきた友達が・・・
A: It was raining the whole time I was there. It was terrible.(旅行中、ずっと雨だったよ。最悪だった)
B: Wow, that sucks. I had a similar experience when I went to Thailand last year. (それはついてないね。私も去年タイに行った時、同じような経験をしたよ)
3. Suck at ~(〜が下手、〜が苦手) 2:45
・I suck at cooking. I go to the convenience store or order on Uber Eats every day.(私は料理が下手なので毎日、コンビニに行くか、Uber Eatsで注文します)
・He seriously sucks at driving. Honestly, he shouldn't be on the road. It's hazardous.(彼は運転が本当に下手だ。正直言うけど、彼は運転しない方がいいと思う。危険だよ)
・Is she really a professional singer? She sucks. She can't carry a tune. (彼女は本当にプロの歌手なの?下手だね。音痴だよ)
4. Suck it up(我慢しなさい) 4:17
・Look. I know you're exhausted, but suck it up. We have to finish this by today.(クタクタに疲れているのは分かってるけど、我慢して。今日中に終わらせないといけないので)
・My leg cramped up during the marathon, but I sucked it up and finished the race. (マラソン中に足がつりましたが、我慢して完走しました)
・Don't put off your project. Just suck it up and finish tonight.(プロジェクトを後回しにしない。つべこべ言わないで言わないで今夜中に終わらせない)
⭐️Hapa School夏学期は7月12日スタート!お申し込み受付中⭐️
Hapa英会話のオンラインスクール『Hapa School』が、夏学期受講生の募集を開始しました!7月12日よりスタートする「Hapa School-Summer 2021-」では、ネイティブの日常会話で頻繁に使われる動詞と前置詞の組み合わせを8週間にわたりお届けします。皆様のご受講を心よりお待ちしております。
https://hapaeikaiwa.com/school/
☆ネイティブっぽい英語を話すには必須フレーズ「It’s not that」☆
ネイティブは会話の中でよく“It’s not that ~”という表現を使いますが、これは物事を完全に否定するのではなく部分的に否定をするときに使われる表現で、「~というわけじゃないんだけど」といった意味になります。自然な英語を話すのに役立つ表現なので、ぜひ覚えておきましょう!https://youtu.be/LxXJNBwkOz8
===================================
☆【Hapa Buddies】Hapa英会話オンラインコミュニティ
英語が好きな仲間と一緒に楽しく英語を学びませんか?
https://hapaeikaiwa.com/buddies/
☆インスタやツイッターでも日常会話で使える実践的なフレーズを毎日投稿しています!
・インスタ: https://www.instagram.com/hapaeikaiwa
・ツイッター:https://twitter.com/hapaeikaiwa
☆【Hapa英会話Podcast】生の英語を楽しく学べる
毎週金曜日、台本を一切使わないアメリカ人のリアルな日常英会話を配信。
http://hapaeikaiwa.com/podcast/
☆【Hapa英会話メルマガ】1日1フレーズ!生英語
通勤中ちょとした合間を利用して無理なく英語が学べるメルマガ『1日1フレーズ!生英語』平日の毎朝6時に配信。http://hapaeikaiwa.com/mailmagazine/
#Hapa英会話
#日常英会話
#ロサンゼルス

just in time用法 在 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.

just in time用法 在 Smart Travel Youtube 的評價
成為這個頻道的會員並獲得獎勵:
https://www.youtube.com/channel/UCIuNPxqDGG08p3EqCwY0XIg/join
#大阪周遊卡 #googlemap #travelplanner #travelplan #travelplan2020
#youtube #youtuber #關西國際機場 #kansaiairport #大阪必買
Hello大家好, 我叫阿Tsar Hello, everyone.
應承了大家好耐,今次就為大家介紹大阪五日四夜google map行程規劃 Finally I am introducing the google map plan for Osaka 5days 4nites itinerary
影片下面有條link, 可以給大家分享給團友這個Google Map, U can share this Google Map with your friends below this video
無論大家透過影片分享, 抑或用whatsapp都可以好方便 Whether u share it through whatsapp or social media
分享到和你一起去旅行, 或者你想分享資料訊息的對象 Share with people who travel with u, or someone who need these info
影片裏面每一日的行程, 都質到密密麻麻 As u can see the itinerary is very intensive
當然不是叫你一次過行完啦, 只不過如果你多過一個人去旅行 Of course, it's not asking u to finish the trip in one go, but if u r not traveling alone,
自然就會有不同的意見, 我只是寫多幾個地點給大家選擇 There will be different opinions, I just write a few more places for choices
還會配合大阪周遊卡, 令到你的旅程省多些金錢 Together with the use of Osaka Amazing pass to save more money on your journey
這個行程規劃 Google Map, 亦會結合我以往拍過大阪的youtube This itinerary plan Google Map will also be combined with the youtube I took in Osaka in the past
所以就算老人家小學生都看得明白, So even if the elderly or students can easily understand it,
大家亦都可以預先見到我分享的行程規劃, 去旅行之前 Everyone can also see the itinerary plan I shared in advance, before going on a trip
有個預算, 大約去什麼地方, 和用多少錢, 節省多少錢 Have an idea for the budget about where to go, how much to spend n how much to save
一目了然, 我那麼用心去製作, 你沒有理由不給我表情符號以示支持㗎? SO clearly. Do I deserve an emoji for a support?
如果你去的日數是4日3夜, 這個行程規劃都適合你, If u go for 4 days n 3 nights, this itinerary plan is also suitable for u,
只是好簡單, 揀選你認為適合的行程就ok啦, Simply choose the places u want to go
旅行的目的, 除了relax增廣見聞這些很cliche的說法之外 The purpose of travel except for relax n explore
當中包括了好多travel planning、危機處理、靈活變通的意義 There are also a lot of travel planning, crisis management n be flexible
我都會在影片跟大家一一分享 I will also mention in this video
事不宜遲, 快點來看看今日的大阪5日4夜行程規劃, are you ready? Let's take a quick look for the video for today.
第一日, 當你到達關西機場,除了買一張出市區的車票ICOCA Card之外 1st day when u arrive in Kansai Airport, other than buying Icoca card to the city
怎樣買ICOCA Card, 和它的用法, How to buy Icoca card n how to use it
怎樣由關西機場出市區的交通選擇, 亦有影片介紹 There are videos to tell u the transportations from Kansai Airport to the city
我建議你亦買一張大阪周遊卡, 可以幫你節省好多錢 I suggest u also buy an Osaka amazing pass, which can help u save a lot of money
影片的第三日, 會跟大家分享如何可以好flexible的那樣用這張大阪周遊卡 3rd day of this video, I will share how to maximize the usage of this pass
有些人是搭凌晨機出發, 很早就會到關西機場 Some people leave by midnite, they will arrive at Kansai Airport very early
如果你的酒店check in時間要等到中午過後, 那麼你早上到關西機場 If your hotel check-in time has to wait until noon, then u will arrive at Kansai Airport early in the morning
我就建議你去Rinku Town,逛逛一間24小時的超市Trial Supercenter I suggest u go to Rinku Town and visit a 24-hour supermarket Trial Supercenter
亦有一間好平的免稅妝藥店, 再去Rinku Town Premium Outlet 才出市區 There is a cheap duty-free cosmetic drugstore then Rinku Town Premium Outlet before going to the city
我這裏有條影片, 影片的07:53分鐘, Pls watch the video at 07:53mins
有講解買一張叫做Rinku Premium Outlet Stopover Ticket There is an explanation for how to buy a Rinku Premium Outlet Stopover Ticket
這張卡有兩種用法, 你可以由關西機場, 去Rinku Town stop over There are 2 ways to use this pass, u can go to Rinku Town stop over from Kansai Airport
Shopping 完, 用著同一張card出難波 After shopping, use the same pass to Namba
如果你當日班機在晚上到達, 就不建議你用這個方法 If your flight arrives at night, this method is not recommended.
但是這一張card, 是可以在你臨離開大阪當日 But this card can be use the day u leave Osaka
出機場之前, 由難波去Rinku Town Stopover Before going to airport, go to Rinku Town Stopover from Namba
..........
みなさん、こんにちは、Ah Tsarです。
皆様の忍耐へのこだわり、今回は大阪の4泊4日グーグルマップの旅程プランをご紹介します
動画の下にリンクがあります。このGoogleマップを友達と共有できます。
動画で共有するか、whatsappを使用するか
一緒に旅行する人と共有したり、情報を共有したい
映画の毎日の旅程はどんどん密集しています
もちろん、一度に旅行を終えるように求めているわけではありませんが、一人で旅行している場合は、
当然のことながら異なる意見があります、私は誰もが選択できるようにいくつかの場所を書きます
大阪トラベルカードとも連携し、旅費を節約します
この旅程の計画Googleマップは、私が過去に大阪で撮ったYouTubeとも組み合わせられます
だから、小学生の老人が理解できても
旅行に行く前に、事前に共有した旅程の計画も誰でも見ることができます
どこに行くか、どれくらい使うか、どれくらい節約するかについての予算がある
一見、私はそれをとても難しくしました、あなたは私にサポートを示すために絵文字を与えない理由はありません㗎?
あなたが行く日数が4日と3泊であるならば、この旅程計画はあなたに適しています、
とても簡単です。あなたが適切だと思う旅程を選んでください。
これらの決まり文句を緩和し、拡大することに加えて、旅行の目的
多くの旅行計画、危機管理、柔軟な意味を含む
ビデオで一つずつあなたと共有します
請用片右下角調4K睇片。

just in time用法 在 Magic Box-however 的用法& just adv. 只是;僅僅- YouTube 的八卦

A+ English空中美語雜誌訂閱:http://shop.english4u.net加入我們的粉絲團:https://www.facebook.com/AMCAplusEnglish/想要A+ English空中美語雜誌 ... ... <看更多>
just in time用法 在 YouTube Data API Overview - Google for 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)
... <看更多>
just in time用法 在 just in time中文2023-在Facebook/IG/Youtube上的焦點新聞和 ... 的八卦
just in time 中文2023-在Facebook/IG/Youtube上的焦點新聞和熱門話題資訊,找good time中文,have a good time意思,美好時光英文在2022年該注意什麼?just in time中文 ... ... <看更多>