monaca で kintone js SDK を使って、レコード情報を取得したい

以下のコードでうまくレコード情報を取得できなくて困っています。

原因の分かる方、ご教授いただければありがたいです!m(_ _)m

 

const paramsAuth = {

username: “*****************”,

password: “*****************”

};

const kintoneAuth = new kintoneJSSDK.Auth();

kintoneAuth.setPasswordAuth(paramsAuth);

const paramsConnection = {

domain: “*****************”,

auth: kintoneAuth

};

const kintoneConnect = new kintoneJSSDK.Connection(paramsConnection);

const kintoneRecord = new kintoneJSSDK.Record(kintoneConnect);

const paramsRecord = {

app: 5,

id : 1

};

kintoneRecord.getRecord(paramsRecord).then((rsp) => {

console.log(rsp);

alert(rsp);

}).catch((err) => {

console.log(err);

alert(‘エラー’ + err);

});

椎本芳則さん

こんにちは。

エラーによってはマスクされている認証情報の部分なども影響するので、実行時に出ているエラーの

詳細などを教えていただければ、アドバイスがしやすいです。

サクラエビさん、コメントありがとうございます!

 

以下のサイトを参考に、kintoneのアプリ「飲み会日程調整」を作成してサンプル作成しております。

「Monacaとkintoneで忘年会出欠アプリを作る」

https://qiita.com/coboco/items/8758ad28fa6b77a2cea2

 

実行時のエラーの内容は「The string did not match the expected pattern.」です。

 

もし上手く動作しない原因など分かれば、ぜひご教授いただきたいです!m(_ _)m

rampさん

すみません。少しバタバタしていて遅くなりました。

jsSDKで実行しようとすると、セッション認証で実行されているような感じの動き方しますね。

手元でもドメイン情報とかの指定がきいていない感じで、うまく動かせなかったです・・・

同じような処理にするの出れば、kintone Utility Library for JavaScript を使った方が早いかもです。

また、該当のエラー自体は関数が呼び出せない時とかにでるやつですが、別の要因で出ているような気もしますね。

サクラエビさん、ご多忙の中、回答ありがとうございます!

その後色々と調べてるんですが、どうやら

「kintone Utility Library for JavaScript」→「Node.js」不要。「script」タグで呼び出せる。
「kintone JS SDK」→「Node.js」必須。「require(‘@kintone/kintone-js-sdk’)」で呼び出す。

という違いがあるっぽいです。

「kintone Utility Library for JavaScript」は廃止予定なので使用が非推奨だそうなので、
なんとか「kintone JS SDK」を使えるようにしたいです(^_^;)

クライアント側じゃなく、サーバー側で処理するような仕様になった。
という認識で間違いないんでしょうか?

勉強すればするほど、知らない事や学ぶ事が増えていきます(^_^;)

rampさん

後継と書いていたので、同じ動きなんだろうなーと思ったら違う感じで動くので、

あれ?となりながら、動きを見ていました。

node.jsなどを利用し、kintone JS SDKを実行すると、認証情報を持たせられたりするので、

内部で動きを制御してるのかもと思い、リクエスト内容を変えてみたらいけるのかなーとか

思いつついじっていたのですが、イマイチうまくいかないんですよね。。。

後継なら素直に動けよとかも思いましたが苦笑

このSDKをあまり扱いなれていないですが、正直仕様が変わったってのが一番しっくりくる状況ですね。

 

知らないことは増えますよね。。。いいことなんだとは思いますが、色んなものが出過ぎて、

ついていけないものもあるので、一部見過ごしてしまっていますが笑

>後継なら素直に動けよとかも思いましたが苦笑

全く同感です(^_^;) こういう根本的な所が変わってるなら、
しっかりアピールして欲しいと感じてしまいます。

ちょっと試してみて、動作確認がとれたら、
ここで情報共有したいと思います(^_^)

色々と試して分かった結果をまとめておこうと思います。

【結論】
→monacaアプリで「kintone js SDK」を使ってレコード情報取得はできない

moacaアプリで「Node.js」の実行環境が構築できればいいんでしょうが、
そもそも「Node.js」はサーバー側で実行させるために用意されているものらしいので、無理っぽい。

「webpack」で無理やりバインドして、「kintone js SDK」パッケージは読み込ませても、
「Connection」でdomainを指定するには「Node.js」の実行環境が必須らしく、エラーになります。

なので、残念ですが、このライブラリの導入は断念しました(T_T)
で、代替案です。

【代替案】
→「kintone-rest-api-client」ならmonacaアプリでも使えそう
https://github.com/kintone/js-sdk/tree/master/packages/rest-api-client

実際にアプリに組み込んで動作確認はとれました。
ここが参考になりました。
「kintone-rest-api-client を使ってみた。レコード編その①」
https://qiita.com/potara/items/268fd8ab75a5a3e32374

サイボーズ関係の方が開発してるので、いきなり無くなったりはしないと信じたい(^_^;)