Vk-io: 始める方法は?

作成日 2019年02月24日  ·  9コメント  ·  ソース: negezor/vk-io

「ノードv11.10.0」+ MacOS10.14があります。
残念ながら、次のエラーのためにVK-ioを起動できません。

import VK from 'vk-io';
       ^^
SyntaxError: Unexpected identifier

...

import { VK } from 'vk-io';
       ^
SyntaxError: Unexpected token {

だから私は何か他のことを試みましたが、再びそのアプローチで成功しませんでした:

const vk = require('vk-io');
vk.token = "asdfasdfadsf";
const collectStream = vk.collect.wall.get({ owner_id: -86529522 });

// Error:
const collectStream = vk.collect.wall.get({
                                 ^
TypeError: Cannot read property 'wall' of undefined

私は何を間違えますか?

最も参考になるコメント

インポートは、MJS、TypeScript、またはBabelの前処理でのみ機能します。 ここでは、CommonJSを使用する必要があります。

const { VK } = require('vk-io');

const vk = new VK();
vk.token = 'asdfasdfadsf';

const collectStream = vk.collect.wall.get({ owner_id: -86529522 });

全てのコメント9件

インポートは、MJS、TypeScript、またはBabelの前処理でのみ機能します。 ここでは、CommonJSを使用する必要があります。

const { VK } = require('vk-io');

const vk = new VK();
vk.token = 'asdfasdfadsf';

const collectStream = vk.collect.wall.get({ owner_id: -86529522 });

ネゲゾール、ありがとう! できます!
なぜ私がそのようなエラーを抱えているのか知っていますか?

vk.collectStream.on('error', console.error);
                 ^
TypeError: Cannot read property 'on' of undefined

最新バージョンのvk-ioを使用しています。

たぶん、vkオブジェクトが最初に使用されているというのは事実ですか?
使用例。

const collectStream = vk.collect.wall.get({ owner_id: -86529522 });

collectStream.on('error', console.error);

collectStream.on('data', payload => {
  console.log('Data', payload.items);
});
collectStream.on('end', () => {
    console.log('Data received');
});

グループの壁からメッセージを取得する方法についての小さな例はありますか?
私はVKサービスを初めて使用するので、少し混乱しているように見えます。
どの認証方法を選択する必要がありますか? appIdとappSecretとは何ですか? アプリケーションではなくグループにアクセスする必要があります。 グループの秘密鍵はどこに渡すことができますか?
ログイン/パスワードデータとグループへのprivateKeyがあります。 次に何をすればいいですか?

wall.getメソッドを使用してグループから投稿を取得できますが、グループトークンでは使用できません。 トークンがある場合は、オプションでのみ使用する必要があります。

const group = new VK({
  token: 'GROUP_TOKEN'
});

const app = new VK({
  token: 'APP_TOKEN_OR_USER_TOKEN'
});

// Method
app.api.wall.get({
  owner_id: -86529522 // Group ID
}); // => Promise

// Or collect all
app.collect.wall.get({
  owner_id: -86529522
}); // => CollectStream

コレクションは、ユーザーまたはアプリケーショントークンで機能します。 ただし、メソッドがサポートしている場合のみ。

ありがとう!
AppTokenとは何ですか?UserTokenはどこで入手できますか? グループの秘密鍵と同じではありませんか?

アプリケーショントークン(サービストークン) 。 スタンドアロンまたは直接認証を介して利用可能なユーザートークン。 これらはすべてトークンであり、メソッドを呼び出すための権限があります。

wall.getリクエストを行うために必要なトークン(および認証メソッド)は何ですか?

私のサンプルコードは次のとおりです。

const { VK } = require("vk-io");
const vk = new VK({ token: "...a long group API token placed here..." });
vk.api.wall.get({ owner_id: -86529522 });

しかし、次のメッセージが表示されるたびに:
Code №5 - User authorization failed: method is unavailable with group auth.

単純なwall.getリクエストを作成することはできません:)

メソッドのドキュメントには、グループトークンでは使用できないことが示されています。 サービスまたはユーザートークンが必要です。これについてはすでに上記で説明しました。
image

このページは役に立ちましたか?
0 / 5 - 0 評価