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

帶有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
如何檢查PHP會話是否已經開始?如何檢查PHP會話是否已經開始?Apr 30, 2025 am 12:20 AM

在PHP中,可以使用session_status()或session_id()來檢查會話是否已啟動。 1)使用session_status()函數,如果返回PHP_SESSION_ACTIVE,則會話已啟動。 2)使用session_id()函數,如果返回非空字符串,則會話已啟動。這兩種方法都能有效地檢查會話狀態,選擇使用哪種方法取決於PHP版本和個人偏好。

描述一個場景,其中使用會話在Web應用程序中至關重要。描述一個場景,其中使用會話在Web應用程序中至關重要。Apr 30, 2025 am 12:16 AM

sessionsarevitalinwebapplications,尤其是在commercePlatform之前。

如何管理PHP中的並發會話訪問?如何管理PHP中的並發會話訪問?Apr 30, 2025 am 12:11 AM

在PHP中管理並發會話訪問可以通過以下方法:1.使用數據庫存儲會話數據,2.採用Redis或Memcached,3.實施會話鎖定策略。這些方法有助於確保數據一致性和提高並發性能。

使用PHP會話的局限性是什麼?使用PHP會話的局限性是什麼?Apr 30, 2025 am 12:04 AM

PHPsessionshaveseverallimitations:1)Storageconstraintscanleadtoperformanceissues;2)Securityvulnerabilitieslikesessionfixationattacksexist;3)Scalabilityischallengingduetoserver-specificstorage;4)Sessionexpirationmanagementcanbeproblematic;5)Datapersis

解釋負載平衡如何影響會話管理以及如何解決。解釋負載平衡如何影響會話管理以及如何解決。Apr 29, 2025 am 12:42 AM

負載均衡會影響會話管理,但可以通過會話複製、會話粘性和集中式會話存儲解決。 1.會話複製在服務器間複製會話數據。 2.會話粘性將用戶請求定向到同一服務器。 3.集中式會話存儲使用獨立服務器如Redis存儲會話數據,確保數據共享。

說明會話鎖定的概念。說明會話鎖定的概念。Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

有其他PHP會議的選擇嗎?有其他PHP會議的選擇嗎?Apr 29, 2025 am 12:36 AM

PHP會話的替代方案包括Cookies、Token-basedAuthentication、Database-basedSessions和Redis/Memcached。 1.Cookies通過在客戶端存儲數據來管理會話,簡單但安全性低。 2.Token-basedAuthentication使用令牌驗證用戶,安全性高但需額外邏輯。 3.Database-basedSessions將數據存儲在數據庫中,擴展性好但可能影響性能。 4.Redis/Memcached使用分佈式緩存提高性能和擴展性,但需額外配

在PHP的上下文中定義'會話劫持”一詞。在PHP的上下文中定義'會話劫持”一詞。Apr 29, 2025 am 12:33 AM

Sessionhijacking是指攻擊者通過獲取用戶的sessionID來冒充用戶。防範方法包括:1)使用HTTPS加密通信;2)驗證sessionID的來源;3)使用安全的sessionID生成算法;4)定期更新sessionID。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境