Я пытаюсь взять свой календарь Google и публиковать каждый день в качестве документа для обнаружения Watson через сценарии Google. Мой код выглядит так.
var headers={
"User-Agent": "CreateCalendarListJson",
"Authorization": "Basic " + Utilities.base64Encode( authdata.username+":"+authdata.password)
};
//headers.contentType="application/json";
var parms={"headers":headers};
url=newurl+"/v1/environments/"+discoveryData.environmentID+
"/collections/"+discoveryData.collection_ID+"/documents/?version=2017-09-01";
parms.method="POST";
parms.file={
'value':JSON.stringify(jsonEvent),
'options':{
'filename':jsonEvent.filename,
'contentType':"application/json"
}
}
console.info('discovery add document %s',JSON.stringify(parms));
response=UrlFetchApp.fetch(url,parms);
Однако это приводит к ошибке 415 неподдерживаемый тип носителя. Хотя application/json является поддерживаемым типом, и я соответствующим образом установил contentType. Какие-либо предложения?
Переменная parms выглядит следующим образом при запуске UrlFetchApp.Fetch:
{"headers":
{"User-Agent":"CreateCalendarListJson",
"Authorization":"Basic ZTIyNTEwM............................tHcg=="},
"method":"POST",
"file":{"value":"{\"title\":\"Events 10/13/2017\",\"filename\":\"Events_10_13_2017\",\"text\":[{\"date\":\"10/13/2017\",\"summary\":\"assignment 1\"}]}",
"options":{"filename":"Events_10_13_2017",
"contentType":"application/json"}}}"