2016-07-19 45 views
1

像往常一樣,我們使用http協議使用firefox,chrome瀏覽器上網,比如我們訪問stackoverlow https://stackoverflow.com/questions/ask,我們得到了呈現的頁面,stackoverflow是過程A,而我們的瀏覽器是過程B.is這是RPC調用?Http調用是RPC?

+0

嗨勞倫斯,你的問題仍然沒有答案? –

回答

2

RPC意味着給調用其實現與調用者不同的過程的過程(方法)的錯覺。 HTTP本身並不能提供這種幻想。瀏覽器從服務器請求HTML的典型情況不是RPC調用。

但是,可以在HTTP之上構建RPC技術,其中將遠程方法調用作爲HTTP請求實現,並且通過HTTP響應返回方法的結果。

1

你的例子沒有描述一個RPC調用,它描述了一個REST調用。

URI https://stackoverflow.com/questions/ask(不幸的是,資源的名稱不是一個好的選擇)是資源(而不是一個進程),並通過HTTP方法操縱或請求資源。所以REST是關於資源的,而RPC是關於操作/過程/方法的。

RPC調用也可以使用HTTP。總是在你使用HTTP調用一個操作時,它是RPC。這就是所謂的

WYGOPIAO:你會得到什麼或交是一個操作

JSON-RPC使用HTTP方法GET或POST發送一個JSON編碼字符串來調用方法/操作/過程。下面的例子顯示了調用方法echo的JSON-RPC對象。

{"jsonrpc": "2.0", "method": "echo", "params": ["hello world"], "id": 0}