首頁 > 後端開發 > php教程 > 帶有Coinbase的比特幣和php,是API-基本用法

帶有Coinbase的比特幣和php,是API-基本用法

Christopher Nolan
發布: 2025-02-19 12:18:12
原創
742 人瀏覽過

帶有Coinbase的比特幣和php,是API-基本用法

您是否曾經考慮過出售服務以換取比特幣?這並不是那麼奇怪 - 今天,許多大型球員實際上正在這樣做。從Okcupid到Khanacademy,甚至WordPress都接受了比特幣。而且,一些國家正在將其視為一種貨幣。今天,我們將使用Coinbase API(及其SDK)來了解如何以一種簡單的方式在您的網站/應用程序上接受比特幣付款。

>

鑰匙要點

  • > Coinbase的API和SDK允許將其集成到Web應用程序中,以接受比特幣付款。它提供了兩種主要的集成方式:使用Coinbase提供的商戶工具之一,或者使用服務的完整集成而無需訪問Coinbase網站。 Coinbase的API提供一系列功能,包括出售或購買比特幣的能力,通過電子郵件或比特幣地址發送或請求比特幣,接受比特幣付款作為商家,將比特幣存儲在一個或多個錢包中,可以訪問比特幣原始網絡數據,並處理微付款和經常付款。
  • 可以通過使用API​​秘密或通過OAuth 2進行API秘密的簡單API鍵訪問來完成Coinbase API的身份驗證。建議使用自己的帳戶並對其進行更改的人使用API​​密鑰系統,同時使用API​​密鑰系統。對於那些希望通過應用程序使用他的帳戶的人,建議使用OAuth。 Coinbase的API提供了創建付款按鈕的功能,可以根據用戶的喜好自定義。這包括設置付款標題,金額,貨幣和交易代碼的能力。成功付款後,按鈕的外觀和返回URL也可以定制。
  • >
  • > coinbase SDK
  • Coinbase有一些有趣的工具和SDK可供所有人使用,並且有一些價格方便且負擔得起的定價條件。
  • >
  • 這是您對定價的了解:

>免費使用Coinbase接收付款;

>

>僅當您要在銀行帳戶上轉移資金時,您才必須支付費用(1%),但前提是您的銷售額超過$ 1000000(是的,一百萬美元);

>您可以在比特幣網絡中進行的最小付款是0.001 BTC。但是,使用共插基錢包,該限制降低到1個satoshi(0.00000001 btc); >

    >另一個重要(有趣)的事情是,您可以選擇激活“即時交換”服務,該服務將比特幣付款金額立即轉換為您選擇的貨幣,而無需其他步驟自動。如果您想避免貨幣不穩定並儘快轉移您的錢。
  • 也就是說……我們如何實施此集成?

    集成類型

    >與許多其他在線支付服務一樣,Coinbase提供了兩種主要集成到Web應用程序的方式。第一個更快,更容易。第二個更加困難,但也更深入,並且足以適應一個更大的項目。

    >第一個集成類型包括使用Coinbase提供的商戶工具之一。您可以使用按鈕,頁面和幀。如果您使用的是CMS或電子商務(WordPress,WooCommerce,Magento…),則有許多插件適合您喜歡的插件。

    >

    >第二個,我們將在今天看到一個示例,是該服務的完整集成,而無需訪問Coinbase網站以生成一些標準的按鈕代碼。實際上,我們將使用特定的PHP SDK來完成。

    >

    我們該如何處理此SDK? Coinbase上的專用頁面很明確:

      >出售或購買比特幣(或與您的貨幣交換);
    • >
    • >通過電子郵件或比特幣地址發送或請求比特幣;
    • >
    • 接受比特幣付款作為商人;
    • >將您的比特幣存儲在一個或多個錢包中;
    • >
    • 可以訪問比特幣原始網絡數據(塊,交易等...)
    • 處理微付款和經常性付款;
    • >
    • >

    >此刻,有三個SDK可用:適用於Ruby,Java和PHP。其他語言也有許多非正式庫(Python,.net,Node…)。正如我之前告訴過的,我們將使用的SDK是PHP SDK,您可以在GitHub上找到。

    >注意:在下一步之前,我將假定您能夠在Coinbase上創建一個帳戶,或者您已經有一個帳戶。

    >

    php sdk

    >安裝

    >讓我們從項目的包裝安裝開始。如果您查看SDK的GitHub頁面,您將沒有發現與作曲家一起做的。但是,簡單的搜索將很容易產生Coinbase/Coinbase軟件包的Packagist頁面。

    >

    您可以使用

    安裝它

    在您的Composer.json文件和A

    >中
    {
    	    "require": {
    	        "coinbase/coinbase": "dev-master"
    	    }
    	}
    登入後複製
    登入後複製
    登入後複製

    身份驗證

    在開始代碼之前,讓我們談論身份驗證。 Coinbase有兩種方法來驗證您作為開發人員以訪問API方法。您可以選擇一個具有API秘密的簡單API密鑰訪問,以具有更多的安全性。或者,如果願意,可以使用OAuth 2。區別不僅與復雜性有關,而且還與您必須處理的情況有關。
    composer update
    登入後複製
    登入後複製
    >

    coinbase文檔非常清楚:如果您想使用帳戶並對其進行更改,則可以使用API​​密鑰系統。如果要讓用戶通過您的應用程序使用他的帳戶(例如,您要構建的客戶端),最好的方法是使用OAuth。

    > API密鑰秘密

    一旦您在Coinbase上擁有一個帳戶,創建API鍵就非常簡單。您要做的就是去這裡,然後單擊“新API密鑰”。

    >

    第一次,您可能必須通過Authy確認您的帳戶。 >

    您會看到的屏幕將是這樣的:

    帶有Coinbase的比特幣和php,是API-基本用法

    >您必須指定要使用的帳戶以及要分配給該特定鍵的權限,以便獲得訪問權限。另外,您可以選擇一個或多個IP作為白名單。如果您沒有指定任何內容,則不會有白名單。

    >

    之後,通過單擊“創建”來確認該過程,然後在要激活API鍵時單擊“啟用”。

    > oauth 2.0

    如果要使用OAuth 2.0,則必須遵循類似的過程。但是,這次您不會創建一個API密鑰,而是一個OAUTH應用程序。為此,請訪問https://coinbase.com/oauth/applications。從那裡,單擊“創建應用程序”。您會看到這樣的屏幕:

    帶有Coinbase的比特幣和php,是API-基本用法

    >插入您的應用程序名稱,如果需要,請選擇一個圖標,並指定未來重定向操作的URL列表。

    注意:您要插入的每個URL都必須使用SSL(https:// ...)。其他一切都將被忽略。

    給您的好,您就完成了!您將看到您的新客戶和客戶端秘密的確認消息。但是,事情還沒有結束:您可以從專用頁面中閱讀有關身份驗證的其他註釋。

    >

    權限

    如果您與API合作,則必須處理權限,以提高安全性。在這裡,您可以看到一個完整的列表:

    全部:完整訪問您的帳戶;
      >
    • 商人:創建付款按鈕,表格,訪問有關商家的基本信息,編輯您的信息並創建新地址; >
    • 餘額:訪問您的實際餘額;
    • >
    • >按鈕:創建付款按鈕;
    • 購買:購買比特幣;
    • 聯繫人:獲取您的聯繫人列表;
    • >
    • 訂單:獲取您收到的訂單的列表;
    • >
    • 出售:出售比特幣;
    • >交易:獲取交易的歷史;
    • >
    • 發送:從您的帳戶發送一定數量的比特幣;
    • >
    • >請求:您的帳戶請求比特幣;
    • >
    • 轉移:獲取購買和賣的歷史;
    • >
    • recurring_payments:獲取重複付款的列表; >
    • > oauth_apps:請參閱,創建和編輯oauth應用程序; >
    • 報告:獲取並創建新報告;
    • >
    • >基本SDK使用
    • >現在我們將SDK包含在項目中,訪問設置中,並且知道我們需要什麼,該是時候開始了。
    • 首先,讓我們看一下身份驗證過程的實現。
    >

    >通過API鍵訪問和秘密

    >

    沒什麼複雜的,只有一個指令。

    >
    {
    	    "require": {
    	        "coinbase/coinbase": "dev-master"
    	    }
    	}
    登入後複製
    登入後複製
    登入後複製

    >只需使用API​​密鑰和API Secret作為withApikey()方法的參數即可。由此產生的$ coinbase對像是我們將來用於將來的示例的對象。

    >通過oauth

    訪問 OAuth應用程序創建後,接下來要做的事情是創建一個$ COINBASEOAUTH對象,指定客戶端ID和我們以前獲得的客戶端秘密。就像這個示例一樣:

    用戶完成授權過程後,他將被重定向到設置期間指定的URL。還將添加代碼參數以獲得有效的令牌。
    composer update
    登入後複製
    登入後複製
    >

    然後,最後一步將是使用我們現在擁有的令牌創建$ coinbase對象的。

    <span>$coinbase = Coinbase<span>::</span>withApiKey($coinbaseAPIKey, $coinbaseAPISecret);</span>
    登入後複製
    >您可以以相同的方式使用此對象,可以使用從API密鑰身份驗證中獲得的對象,API是相同的。

    >

    >訪問您的數據
    <span>$coinbaseOauth = new Coinbase_OAuth($_CLIENT_ID, $_CLIENT_SECRET, $_REDIRECT_URL);
    </span>	<span>header("Location: " . $coinbaseOauth->createAuthorizeUrl("all"));</span>
    登入後複製

    >訪問數據非常容易。您要做的就是在之前使用$ coinbase變量集。

    >

    讓我們看看如何檢查您的餘額:

    >在這裡您可以查看如何訪問用戶數據:

    <span>$tokens = $coinbaseOauth->getTokens($_GET['code']);</span>
    登入後複製
    使用$ coinbase對象,您也可以訪問某些商人屬性。 >

    注意:徽標屬性返回徽標URL。
    <span>$coinbase = Coinbase<span>::</span>withOauth($coinbaseOauth, $tokens);</span>
    登入後複製

    另外,如果需要,您可以使用getContacts()。

    <span>echo $coinbase->getBalance() . " BTC";</span>
    登入後複製
    貨幣數據

    使用此PHP SDK,您也可以訪問有關貨幣的一些數據。 >

    getCurrencies()方法返回使用其ISO代碼實際上在系統上實際活動的所有貨幣的列表。
    <span>$user = $coinbase->getUser()
    </span>	
    	<span>echo $user->name;
    </span>	<span>echo $user->email;
    </span>	<span>echo $user->time_zone;
    </span>	<span>echo $user->native_currency;</span>
    登入後複製
    >

    以下是如何獲取有關匯率的一些信息:

    > getExchangerate()可以在有或沒有參數的情況下使用(如您所見,結果有兩個不同的結果)。
    <span>$user->merchant->company_name;
    </span>	<span>$user->merchant->logo;</span>
    登入後複製

    >您還可以通過GetBuyPrice()和GetSellPrice()獲取有關買賣價格的一些信息

    注:退回的價格包括1%的Coinbase費用和0.15美元的銀行。

    創建一個付款按鈕
    <span>$response = $coinbase->getContacts("user");
    </span>
    	<span>foreach($response->contacts as $contact)
    </span>	<span>{
    </span>		<span>echo $contact;
    </span>		<span>// 'guyaddress@provider.com'
    </span>	<span>}</span>
    登入後複製
    如果您考慮實現難度和最終結果,則付款按鈕創建方法確實很有用。您要做的就是用特定的參數調用CreateButton()方法。

    這是簽名:

    …這是一個例子。
    <span>$currencies = $coinbase->getCurrencies();
    </span>	<span>echo $currencies[0]->name;</span>
    登入後複製
    >

    非常容易,是嗎?

    >第一個$名稱參數是您要創建的付款的“標題”。下一個$價格是您想要的付款金額。第三個是您要使用的貨幣,$ custom是特定的交易代碼,將在付款過程後將其發送給您。

    >最後,$選項數組將使您以各種方式自定義按鈕:成功付款後,您將能夠自定義按鈕外觀或返回URL,或者是失敗的。如果您想進一步了解,我建議您查看正式文檔中的專用頁面。

    有按鈕後,很容易獲取其嵌入代碼。

    >
    {
    	    "require": {
    	        "coinbase/coinbase": "dev-master"
    	    }
    	}
    登入後複製
    登入後複製
    登入後複製
    然後,除了迴盪$ wendys-> embedhtml。

    總結

    這是第1部分的結論,其中我們涵蓋了Coinbase API SDK的基本用法和安裝。在第2部分中,我們將介紹發送和收到資金,並構建樣本申請。請繼續關注!

    比特幣PHP和Coinbase的API基本用法的常見問題(FAQ)

    >如何為比特幣PHP設置Coinbase的API?首先,您需要從Coinbase帳戶創建一個API密鑰。轉到設置,然後訪問API,然後單擊“新API密鑰”。您需要提供密碼和兩因素身份驗證代碼。創建API密鑰後,您可以在PHP代碼中使用它與Coinbase API進行交互。請記住要確保API密鑰安全,因為它允許訪問您的Coinbase帳戶。

    >

    > Coinbase的API的基本功能是什麼?其中包括創建一個新的比特幣地址,將比特幣發送到地址,從地址請求比特幣以及獲取有關比特幣地址的信息。您還可以獲取有關當前比特幣匯率和歷史價格數據的信息。

    >

    >在使用Coinbase的API時如何處理錯誤?捕獲PHP代碼中的塊。如果出現問題,API將返回錯誤消息,您可以適當地捕獲並處理該錯誤消息。例如,如果API在嘗試發送比特幣時返回錯誤,則可以捕獲此錯誤並向用戶顯示一條消息。

    我可以使用Coinbase的API接受我的網站上接受比特幣付款嗎?

    >

    是的,您可以使用Coinbase的API接受網站上的比特幣付款。您可以為每次交易創建一個新的比特幣地址,然後檢查該地址是否有收入。這使您可以接受比特幣付款,而無需親自處理任何基礎區塊鏈技術。

    >

    >在使用Coinbase的API時如何測試代碼?代碼。這使您可以在不影響實際的Coinbase帳戶的情況下進行API呼叫。您可以從Coinbase網站創建一個Sandbox帳戶,然後在測試代碼中使用該帳戶中的API鍵。

    Coinbase的API的安全性如何?所有API調用均通過HTTPS進行,並加密敏感數據。但是,應用程序的安全性還取決於您如何處理API密鑰和其他敏感數據。始終保持您的API密鑰安全,永遠不要與任何人共享。

    >我可以將Coinbase的API與其他編程語言一起使用嗎? >

    >如何監視我對Coinbase API的使用情況?

    coinbase為您的API密鑰提供使用信息。這包括您撥打的API電話數量,發送和接收的數據量以及發生的任何錯誤。您可以從您的Coinbase帳戶中的API訪問頁面查看此信息。

    我可以使用Coinbase的API來交易其他加密貨幣嗎?

以上是帶有Coinbase的比特幣和php,是API-基本用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板