外部から取得したPDFファイルが正常に反映されない

クラウドサインに保存されているPDFファイルをkintoneのレコードへ添付しようと考えております。

一通り作成し、PDFファイルの添付までは正常に実行されましたが、PDFファイル内に描画がされず、空白のPDFが添付されます。

 

kintone.proxyの仕様といったものが関わっているのでしょうか?

ご教示いただけますと幸いです。

 

//PDFの取得
kintone.proxy(Url, 'GET', { "Authorization": "Bearer " + Access_Token }, {}, function (body, status, headers) {
//FormDataにファイルを格納
var url = 'https://xxxxxxxx.cybozu.com/k/v1/file.json';
var blob = newBlob([body], { type: 'application/pdf' });
var formData = newFormData();
formData.append(' __REQUEST_TOKEN__', kintone.getRequestToken());
formData.append("file", blob, FileName);
//リクエストの送信
var xmlHttp = newXMLHttpRequest();
xmlHttp.open('POST', url, false);
xmlHttp.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xmlHttp.setRequestHeader('Accept', 'application/json');
xmlHttp.setRequestHeader('Accept', 'text/javascript');
xmlHttp.setRequestHeader('Accept', '*/*');
xmlHttp.responseType = 'multipart/form-data';
xmlHttp.send(formData);
if (xmlHttp.status === 200) {
var key = JSON.parse(xmlHttp.responseText).fileKey;
var json = {
app: kintone.app.getId(),
id: RecordID,
record: {
'添付ファイル': {
value: [{ fileKey: key }]
}
}
};
kintone.api(kintone.api.url('/k/v1/record', true), 'PUT', json);
}
console.log(xmlHttp.response);
}, function (error) {
var resp = JSON.parse(error);
console.log(resp.message);
});

 

こんにちは!

kintone.proxy(Url, 'GET', { "Authorization": "Bearer " + Access_Token }, {}, function (body, status, headers) {

のbodyにはpdfファイルのデータが入っているのでしょうか?
また、

var blob = newBlob([body], { type: 'application/pdf' });

ここなのですが、new と Blobがくっついているのが気になるのと、

formData.append("file", blob, FileName);

↑こちらのFileNameはどこかで定義されてますでしょうか?

あと、切り分け方についてなのですが、例えばですが、
↓こちらのサンプルコードのように

ファイルアップロード

var blob = new Blob(['Sample Test File'], {type: 'text/plain'});

と変えて、ファイル名もsample.txt用に変更するなどして、
Sample Text File と書かれたテキストファイルが添付されるかなど試してみられましたでしょうか?

Sample Text File と書かれたテキストファイルが添付されない場合はコードに問題があると思いますし、
Sample Text File と書かれたテキストファイルが添付された場合は、持ってきたpdfのデータ(body?)に問題があると思いますので

※追記:bodyをとってきたあとにconsole.log(body)してみるといいかも知れません(><)

まだ解決されていない場合は是非試されてみてください:eyes::sparkles::sparkles: