尝试使用json在Node.js中解析以获取语法错误

乔什

我正在尝试构建一个应用程序。我以前没有Java经验,最初打算通过LAMP进行此操作,但发现这不是最佳解决方案。所以我是一点绿色

我正在Windows 8机器上使用nodejs进行开发。我正在从ebay api中提取数据。我正在尝试解析返回的JSON(不知道我在做什么)

我知道的代码已损坏:

 JSON.parse(body);

JSON本身:

/**/_cb_findItemsByKeywords({"findCompletedItemsResponse":[{"ack":["Success"],"version":       ["1.12.0"],"timesta
mp":["2014-08-17T15:39:18.735Z"],"searchResult":[{"@count":"1","item":[{"itemId":    ["231283411176"],"title":["Nine West Te
ched Out Snap on Case for iPhone 5 Shoe Lover Hard Cover CHOP 3OM0z1"],"globalId":["EBAY-US"],"primaryCategory":[{"categ
oryId":["20349"],"categoryName":["Cases, Covers & Skins"]}],"galleryURL":["http:\/    \/thumbs1.ebaystatic.com\/m\/mFGCczOCC
B_D_F8sXXJ1QrA\/140.jpg"],"viewItemURL":["http:\/\/www.ebay.com\/itm\/Nine-West-Teched-Out-Snap-Case-iPhone-5-Shoe-Lover
-Hard-Cover-CHOP-3OM0z1-\/231283411176?pt=US_Cell_Phone_PDA_Cases"],"paymentMethod":["PayPal"],"autoPay":["false"],"post
alCode":["08003"],"location":["Cherry Hill,NJ,USA"],"country":["US"],"shippingInfo":[{"shippingServiceCost":[{"@currency
Id":"USD","__value__":"3.89"}],"shippingType":["Flat"],"shipToLocations":["Worldwide"],"expeditedShipping":["true"],"one
DayShippingAvailable":["true"],"handlingTime":["0"]}],"sellingStatus":[{"currentPrice":[{"@currencyId":"USD","__value__"
:"15.07"}],"convertedCurrentPrice":[{"@currencyId":"USD","__value__":"15.07"}],"sellingState":["EndedWithoutSales"]}],"l
istingInfo":[{"bestOfferEnabled":["false"],"buyItNowAvailable":["false"],"startTime":["2014-07-15T09:58:29.000Z"],"endTi
me":["2014-09-13T09:58:29.000Z"],"listingType":["FixedPrice"],"gift":["false"]}],"returnsAccepted":["true"],"condition":
[{"conditionId":["1500"],"conditionDisplayName":["New other (see details)"]}],"isMultiVariationListing":["false"],"disco
untPriceInfo":[{"originalRetailPrice":    [{"@currencyId":"USD","__value__":"19.99"}],"pricingTreatment":["STP"],"soldOnEbay
":["false"],"soldOffEbay":["false"]}],"topRatedListing":["true"]}]}],"paginationOutput":[{"pageNumber":["1"],"entriesPer
Page":["1"],"totalPages":["848492"],"totalEntries":["848492"]}]}]})

来自nodejs的错误:

SyntaxError: Unexpected token /
at Object.parse (native)
at Request._callback (C:\Users\WolJoshu\Desktop\temp\nodejs\index.js:45:11)
at Request.self.callback (C:\Users\WolJoshu\Desktop\temp\nodejs\node_modules\request\request.js:123:22)
at Request.EventEmitter.emit (events.js:98:17)
at Request.<anonymous> (C:\Users\WolJoshu\Desktop\temp\nodejs\node_modules\request\request.js:1047:14)
at Request.EventEmitter.emit (events.js:117:20)
at IncomingMessage.<anonymous> (C:\Users\WolJoshu\Desktop\temp\nodejs\node_modules\request\request.js:998:12)
at IncomingMessage.EventEmitter.emit (events.js:117:20)
at _stream_readable.js:870:14
at process._tickCallback (node.js:415:13)

代码:

var request = require('request');
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

//This defines what main page to load

app.get('/', function(req, res){
  res.sendfile('engine.html');
});

io.on('connection', function(socket){

// Simply lets us know when users connect and disconnect
console.log('a user connected');
  socket.on('disconnect', function(){
    console.log('user disconnected');
  });

//When data comes in do the following
  socket.on('incomingdata', function(msg){

//put the data back to the client
    io.emit('incomingdata',  msg);

//This builds the ebay request

    var url = "http://svcs.ebay.com/services/search/FindingService/v1";
    url += "?OPERATION-NAME=findCompletedItems";
    url += "&SERVICE-VERSION=1.0.0";
    url += "&SECURITY-APPNAME=deleted";
    url += "&GLOBAL-ID=EBAY-US";
    url += "&RESPONSE-DATA-FORMAT=JSON";
    url += "&callback=_cb_findItemsByKeywords";
    url += "&REST-PAYLOAD";
    url += "&keywords=" + msg;
    url += "&paginationInput.entriesPerPage=1";

//This puts the request in

    request(url, function (error, response, body) {
      if (!error && response.statusCode == 200) {

//Here is some experimental json parcing stuff
 JSON.parse(body);
//   console.log('Here is the parsed text: ' + sample);    

//This echos our search term to the console
    console.log('Here is the search term: ' + msg);

//this pumps it back in to the client in raw HTML

        io.emit('incomingdata', body );        
        console.log('incomingdata', body );        
      }
    })

  });


});

http.listen(3000, function(){
  console.log('listening on *:3000');
});'
达里尔·韦斯特

错误消息表明解析将死于第一个字符“ /”;JSON不接受注释,仅接受JSON编码(双引号,对象和数组,ISO8601日期等)。

我能够剥离“ findItemsByKeyWords(”和最后一个结束括号之间的JSON负载,并将其发送到http://jsoneditoronline.org/进行验证,以确保它可以解析,所以很好。但是您需要确保正文仅包含有效的JSON,或者在解析之前进行预处理以去除开头的注释和“ findBy”调用。如果您需要的话,您可能还希望将标头设置为“接受” JSON。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

尝试在MySQL语法中重复字符串,获取语法错误

来自分类Dev

“解析器错误”语法错误:位置 0 处的 JSON 中的意外标记 <

来自分类Dev

Node js mysql 语法错误

来自分类Dev

文件结尾解析错误,插入 PHP 插件使用的代码中的语法错误

来自分类Dev

JSON语法错误js对象

来自分类Dev

尝试从邻接树中获取子项时在“)”处或附近出现语法错误

来自分类Dev

json解析错误语法错误输入意外结束

来自分类Dev

尝试在Node.js中将CSV文件转换为JSON时会产生语法错误,而仅需要CSV文件

来自分类Dev

使用 CDT 对 Eclipse 插件中的某些符号禁用语法错误“无法解析符号 <id>”

来自分类Dev

语法错误:当获取 rails json 时,JSON 中的意外标记 o 在位置 1

来自分类Dev

从HTTP.JSONP返回的JSON中的AngularJS获取语法错误

来自分类Dev

使用vb .net更改ms访问表时在字段定义中获取语法错误

来自分类Dev

JSON解析:未捕获的语法错误:意外的令牌e

来自分类Dev

Express.js node.js 语法错误尝试 .update() mongoDB

来自分类Dev

尝试在sql中声明变量并使用if-else语句时出现语法错误。-“ VARCHAR”或附近的语法错误

来自分类Dev

Json语法错误

来自分类Dev

尝试使用 node.js 中的 jira-connector 库从 JIRA 获取问题的 json 列表

来自分类Dev

使用 knex.js 的 psql 中 CREATE FUNCTION 语句中的语法错误

来自分类Dev

搜索尝试语法错误

来自分类Dev

使用MySQL Workbench 6.0存储过程获取语法错误

来自分类Dev

尝试在pycharm中运行时显示语法错误

来自分类Dev

尝试在mysql中创建过程时出现语法错误

来自分类Dev

尝试在 SQL 中插入多行时出现语法错误?

来自分类Dev

Laravel,语法错误,尝试从数据库中获取数据时控制器中出现意外的“ ::”

来自分类Dev

node.js + postgres:“ $ 1”或附近的语法错误

来自分类Dev

Node.js导入失败,出现语法错误

来自分类Dev

地址信息语法错误Node.js(快速)

来自分类Dev

Node.js / Jade语法错误:意外令牌;

来自分类Dev

node.js + postgres:“ $ 1”或附近的语法错误

Related 相关文章

  1. 1

    尝试在MySQL语法中重复字符串,获取语法错误

  2. 2

    “解析器错误”语法错误:位置 0 处的 JSON 中的意外标记 <

  3. 3

    Node js mysql 语法错误

  4. 4

    文件结尾解析错误,插入 PHP 插件使用的代码中的语法错误

  5. 5

    JSON语法错误js对象

  6. 6

    尝试从邻接树中获取子项时在“)”处或附近出现语法错误

  7. 7

    json解析错误语法错误输入意外结束

  8. 8

    尝试在Node.js中将CSV文件转换为JSON时会产生语法错误,而仅需要CSV文件

  9. 9

    使用 CDT 对 Eclipse 插件中的某些符号禁用语法错误“无法解析符号 <id>”

  10. 10

    语法错误:当获取 rails json 时,JSON 中的意外标记 o 在位置 1

  11. 11

    从HTTP.JSONP返回的JSON中的AngularJS获取语法错误

  12. 12

    使用vb .net更改ms访问表时在字段定义中获取语法错误

  13. 13

    JSON解析:未捕获的语法错误:意外的令牌e

  14. 14

    Express.js node.js 语法错误尝试 .update() mongoDB

  15. 15

    尝试在sql中声明变量并使用if-else语句时出现语法错误。-“ VARCHAR”或附近的语法错误

  16. 16

    Json语法错误

  17. 17

    尝试使用 node.js 中的 jira-connector 库从 JIRA 获取问题的 json 列表

  18. 18

    使用 knex.js 的 psql 中 CREATE FUNCTION 语句中的语法错误

  19. 19

    搜索尝试语法错误

  20. 20

    使用MySQL Workbench 6.0存储过程获取语法错误

  21. 21

    尝试在pycharm中运行时显示语法错误

  22. 22

    尝试在mysql中创建过程时出现语法错误

  23. 23

    尝试在 SQL 中插入多行时出现语法错误?

  24. 24

    Laravel,语法错误,尝试从数据库中获取数据时控制器中出现意外的“ ::”

  25. 25

    node.js + postgres:“ $ 1”或附近的语法错误

  26. 26

    Node.js导入失败,出现语法错误

  27. 27

    地址信息语法错误Node.js(快速)

  28. 28

    Node.js / Jade语法错误:意外令牌;

  29. 29

    node.js + postgres:“ $ 1”或附近的语法错误

热门标签

归档