Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual Basic 6.0) WordPress API Key Authentication with miniOrange PluginSee more WordPress ExamplesDemonstrates API key authentication using the miniOrange API Authentication plugin. For more information, see https://wordpress.org/plugins/wp-rest-api-authentication/
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As New ChilkatHttp Dim success As Long ' Use your API key here, such as TaVFjSBu8IMR0MbvZNn7A6P04GXrbtHm ' This causes the "Authorization: Bearer <api_key>" header to be added to each HTTP request. http.AuthToken = "api_key" Dim sbResponseBody As New ChilkatStringBuilder success = http.QuickGetSb("https://www.yoursite.com/wp-json/wp/v2/posts?page=1",sbResponseBody) If (success = 0) Then Debug.Print http.LastErrorText Exit Sub End If Dim jarrResp As New ChilkatJsonArray success = jarrResp.LoadSb(sbResponseBody) jarrResp.EmitCompact = 0 Debug.Print "Response Body:" Debug.Print jarrResp.Emit() Dim respStatusCode As Long respStatusCode = http.LastStatus Debug.Print "Response Status Code = " & respStatusCode If (respStatusCode >= 400) Then Debug.Print "Response Header:" Debug.Print http.LastHeader Debug.Print "Failed." Exit Sub End If ' Sample JSON response: ' (Sample code for parsing the JSON response is shown below) ' [ ' { ' "id": 1902, ' "date": "2020-11-16T09:54:09", ' "date_gmt": "2020-11-16T16:54:09", ' "guid": { ' "rendered": "http:\/\/cknotes.com\/?p=1902" ' }, ' "modified": "2020-11-16T09:54:09", ' "modified_gmt": "2020-11-16T16:54:09", ' "slug": "xero-redirect-uri-for-oauth2-and-desktop-apps", ' "status": "publish", ' "type": "post", ' "link": "https:\/\/cknotes.com\/xero-redirect-uri-for-oauth2-and-desktop-apps\/", ' "title": { ' "rendered": "Xero Redirect URI for OAuth2 and Desktop Apps" ' }, ' "content": { ' "rendered": "<p>...", ' "protected": false ' }, ' "excerpt": { ' "rendered": "<p>...", ' "protected": false ' }, ' "author": 1, ' "featured_media": 0, ' "comment_status": "closed", ' "ping_status": "open", ' "sticky": false, ' "template": "", ' "format": "standard", ' "meta": [ ' ], ' "categories": [ ' 815 ' ], ' "tags": [ ' 594, ' 816 ' ], ' "_links": { ' "self": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/posts\/1902" ' } ' ], ' "collection": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/posts" ' } ' ], ' "about": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/types\/post" ' } ' ], ' "author": [ ' { ' "embeddable": true, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/users\/1" ' } ' ], ' "replies": [ ' { ' "embeddable": true, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/comments?post=1902" ' } ' ], ' "version-history": [ ' { ' "count": 1, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/posts\/1902\/revisions" ' } ' ], ' "predecessor-version": [ ' { ' "id": 1904, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/posts\/1902\/revisions\/1904" ' } ' ], ' "wp:attachment": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/media?parent=1902" ' } ' ], ' "wp:term": [ ' { ' "taxonomy": "category", ' "embeddable": true, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/categories?post=1902" ' }, ' { ' "taxonomy": "post_tag", ' "embeddable": true, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/tags?post=1902" ' } ' ], ' "curies": [ ' { ' "name": "wp", ' "href": "https:\/\/api.w.org\/{rel}", ' "templated": true ' } ' ] ' } ' }, ' ... ' ] ' Sample code for parsing the JSON response... ' Use the following online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON Dim date_gmt As New DtObj Dim json As ChilkatJsonObject Dim id As Long Dim date As String Dim guidRendered As String Dim modified As String Dim modified_gmt As String Dim slug As String Dim status As String Dim v_type As String Dim link As String Dim titleRendered As String Dim contentRendered As String Dim contentProtected As Long Dim excerptRendered As String Dim excerptProtected As Long Dim author As Long Dim featured_media As Long Dim comment_status As String Dim ping_status As String Dim sticky As Long Dim template As String Dim format As String Dim j As Long Dim count_j As Long Dim intVal As Long Dim href As String Dim embeddable As Long Dim count As Long Dim taxonomy As String Dim name As String Dim templated As Long Dim i As Long i = 0 Dim count_i As Long count_i = jarrResp.Size Do While i < count_i Set json = jarrResp.ObjectAt(i) id = json.IntOf("id") date = json.StringOf("date") success = json.DtOf("date_gmt",0,date_gmt) guidRendered = json.StringOf("guid.rendered") modified = json.StringOf("modified") modified_gmt = json.StringOf("modified_gmt") slug = json.StringOf("slug") status = json.StringOf("status") v_type = json.StringOf("type") link = json.StringOf("link") titleRendered = json.StringOf("title.rendered") contentRendered = json.StringOf("content.rendered") contentProtected = json.BoolOf("content.protected") excerptRendered = json.StringOf("excerpt.rendered") excerptProtected = json.BoolOf("excerpt.protected") author = json.IntOf("author") featured_media = json.IntOf("featured_media") comment_status = json.StringOf("comment_status") ping_status = json.StringOf("ping_status") sticky = json.BoolOf("sticky") template = json.StringOf("template") format = json.StringOf("format") j = 0 count_j = json.SizeOfArray("meta") Do While j < count_j json.J = j j = j + 1 Loop j = 0 count_j = json.SizeOfArray("categories") Do While j < count_j json.J = j intVal = json.IntOf("categories[j]") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("tags") Do While j < count_j json.J = j intVal = json.IntOf("tags[j]") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.self") Do While j < count_j json.J = j href = json.StringOf("_links.self[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.collection") Do While j < count_j json.J = j href = json.StringOf("_links.collection[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.about") Do While j < count_j json.J = j href = json.StringOf("_links.about[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.author") Do While j < count_j json.J = j embeddable = json.BoolOf("_links.author[j].embeddable") href = json.StringOf("_links.author[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.replies") Do While j < count_j json.J = j embeddable = json.BoolOf("_links.replies[j].embeddable") href = json.StringOf("_links.replies[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.version-history") Do While j < count_j json.J = j count = json.IntOf("_links.version-history[j].count") href = json.StringOf("_links.version-history[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.predecessor-version") Do While j < count_j json.J = j id = json.IntOf("_links.predecessor-version[j].id") href = json.StringOf("_links.predecessor-version[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.wp:attachment") Do While j < count_j json.J = j href = json.StringOf("_links.wp:attachment[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.wp:term") Do While j < count_j json.J = j taxonomy = json.StringOf("_links.wp:term[j].taxonomy") embeddable = json.BoolOf("_links.wp:term[j].embeddable") href = json.StringOf("_links.wp:term[j].href") j = j + 1 Loop j = 0 count_j = json.SizeOfArray("_links.curies") Do While j < count_j json.J = j name = json.StringOf("_links.curies[j].name") href = json.StringOf("_links.curies[j].href") templated = json.BoolOf("_links.curies[j].templated") j = j + 1 Loop i = i + 1 Loop |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.