1

Şu anda watson-developer-cloud Node.js SDK'sını kullanarak Node.js ile çalışıyorum ve bir sorgu gönderirken sorun yaşıyorum Bir varlık içerir. Hala params nesnesi kullanılarak kişiler parametrelerini göndermek için nasıl anlamaya çalışıyorumBir AlchemyData Gönderme Node.js (watson-developer-cloud modülü) kullanarak haber sorgusu

// require watson's node sdk and fs 
var watson = require('watson-developer-cloud'); 
var fs = require('fs'); 

// Define output file 
var outputJSONFile = '/home/vagrant/Desktop/node/dir/data.json'; 

// Create alchemy_data_news object using our api_key 
var alchemy_data_news = watson.alchemy_data_news({ 
    api_key: '' 
}); 

// Define params for the query and what values to return 
// Accepted returne values: 
// docs.alchemyapi.com/v1.0/docs/full-list-of-supported-news-api-fields 
var params = { 
    start: 'now-1m', 
    end: 'now', 
    count: 2, 
    qs: ['q.enriched.url.enrichedTitle.entities.entity.text=apple'], 
    return: ['enriched.url.url,enriched.url.title'] 
}; 

// Call getNews method and return json 
alchemy_data_news.getNews(params, function (err, news) { 
    if (err) { 
    console.log('error:', err); 
    } else { 
    fs.writeFile(outputJSONFile, JSON.stringify(news, null, 2), function(err) { 
     if (err) { 
     console.log('WriteFile Error:', err); 
     } else { 
     console.log("JSON saved to " + outputJSONFile); 
     } 
    }); 
    } 
}); 

:

Bu

benim kodudur.

Bazı kodları kazarken qs ile karşılaştım, bu yüzden bunu test etmek için kullanıyordum, ancak hiç başaramadım.

Her türlü öneri çok takdir edilmektedir.

PS: Ben geçmesine çalışıyorum:
q.enriched.url.enrichedTitle.entities.entity.text = elma q.enriched.url.enrichedTitle.entities.entity.type = şirket

+0

Bu değişim kodu ile gibi görünüyor artık düzgün çalışıyor: var params = { ... ... 'q.enriched.url.enrichedTitle .entities.entity.text ':' Apple ', ' q.enriched.url.enrichedTitle.entities.entity.type ':' şirket ', ... }; Daha iyi bir yol varsa, lütfen bana bildirin. Teşekkürler! – Paul

cevap

2

node-sdk source code for AlchemyDataNews'a bakarsanız, üst düzey parametrelerin sorgu dizeleri olarak gönderildiğini göreceksiniz.
Sonra params haritası olmalıdır:

var params = { 
    start: 'now-1m', 
    end: 'now', 
    count: 2, 
    return: ['enriched.url.url,enriched.url.title'], 
    // fields here 
    'q.enriched.url.enrichedTitle.entities.entity.text': 'apple', 
    'q.enriched.url.enrichedTitle.entities.entity.type': 'company' 
}; 
+0

Yardımlarınız için çok teşekkürler! – Paul