Visual FoxPro
Visual FoxPro
Get Task Lists
See more Google Tasks Examples
Demonstrates how to download the Google task lists.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loFac
LOCAL lcAccessToken
LOCAL loHttp
LOCAL loResp
LOCAL lcKind
LOCAL lcEtag
LOCAL i
LOCAL lnCount_i
LOCAL lcId
LOCAL lcTitle
LOCAL lcUpdated
LOCAL lcSelfLink
LOCAL loJson
lnSuccess = 0
* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
* Get the previously obtained access token.
* See Get Google Tasks Access Token.
loFac = CreateObject('Chilkat.FileAccess')
lcAccessToken = loFac.ReadEntireTextFile("qa_data/tokens/googleTasks.txt","utf-8")
IF (loFac.LastMethodSuccess = 0) THEN
? loFac.LastErrorText
RELEASE loFac
CANCEL
ENDIF
loHttp = CreateObject('Chilkat.Http')
loHttp.AuthToken = lcAccessToken
loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpNoBody("GET","https://www.googleapis.com/tasks/v1/users/@me/lists",loResp)
IF (lnSuccess = 0) THEN
? loHttp.LastErrorText
RELEASE loFac
RELEASE loHttp
RELEASE loResp
CANCEL
ENDIF
* Show the response body.
? loResp.BodyStr
* Examine the response status code.
? "response status code: " + STR(loResp.StatusCode)
* Use this online tool to generate parsing code from sample JSON:
* Generate Parsing Code from JSON
loJson = CreateObject('Chilkat.JsonObject')
loJson.Load(loResp.BodyStr)
lcKind = loJson.StringOf("kind")
lcEtag = loJson.StringOf("etag")
i = 0
lnCount_i = loJson.SizeOfArray("items")
DO WHILE i < lnCount_i
loJson.I = i
lcKind = loJson.StringOf("items[i].kind")
lcId = loJson.StringOf("items[i].id")
lcTitle = loJson.StringOf("items[i].title")
lcUpdated = loJson.StringOf("items[i].updated")
lcSelfLink = loJson.StringOf("items[i].selfLink")
i = i + 1
ENDDO
* Sample response:
* {
* "kind": "tasks#taskLists",
* "etag": "\"84_7Cubo3y98GMV9bE3zQclHxhc/cv_AS-HUP96xJ9bgP8Y2B8WGSpM\"",
* "items": [
* {
* "kind": "tasks#taskList",
* "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MDow",
* "title": "My Tasks",
* "updated": "2019-04-04T17:42:52.000Z",
* "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MDow"
* },
* {
* "kind": "tasks#taskList",
* "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MzE3OTUxODY4OTU1MTEwMDow",
* "title": "ccc",
* "updated": "2019-04-04T17:15:19.000Z",
* "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6MzE3OTUxODY4OTU1MTEwMDow"
* },
* {
* "kind": "tasks#taskList",
* "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NDQ0NTA4MDYyNTY3OTEzMzow",
* "title": "bbb",
* "updated": "2019-04-04T17:15:02.000Z",
* "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NDQ0NTA4MDYyNTY3OTEzMzow"
* },
* {
* "kind": "tasks#taskList",
* "id": "MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzow",
* "title": "aaa",
* "updated": "2019-04-04T17:13:17.000Z",
* "selfLink": "https://www.googleapis.com/tasks/v1/users/@me/lists/MDM4MzQ4NTA3NDQwMDUxMzQ2OTQ6NzAwOTA4MDA1NzU2ODYwMzow"
* }
* ]
* }
*
* response status code: 200
RELEASE loFac
RELEASE loHttp
RELEASE loResp
RELEASE loJson