azure Synapse/ADF“错误代码”:“2200”,“留言”:“”源“端发生故障,错误代码=JsonInvalidDataFormat

siv3szwd  于 2022-11-17  发布在  其他
关注(0)|答案(2)|浏览(182)

我正在使用复制活动进行rest调用,以将数据写入datalake存储。源是rest数据集,接收是json。如果我使用http二进制数据集,它可以正常工作,但无法以简单的方式执行分页。我收到以下错误

{
    "errorCode": "2200",
    "message": "Failure happened on 'Source' side. ErrorCode=JsonInvalidDataFormat,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=Error occurred when deserializing source JSON file ''. Check if the data is in valid JSON object format.,Source=Microsoft.DataTransfer.ClientLibrary,'",
    "failureType": "UserError",
    "target": "ingest json to landing",
    "details": []
}

如果我只预览adf中的数据,我会收到以下错误:
错误代码21155详细信息反序列化源JSON文件“”时出错。请检查数据是否为有效的JSON对象格式。

如果我对 Postman 进行同样的呼叫,没有问题,但正文以文本形式返回,如下所示:enter image description here

[
   {
      "Data":1561,
      "Number":156,
      "ID":1565,
      "TypeID":15,
      "Type":"sdfg",
      "Comments":"jbgijdresbgiesugbiiergburesgbiergb breijfberiugbi iuergiuer erguiergeriu erreuguierh guierhger eu u geir er erug iug    eruhiuguiergiuguer  er ug e  eruhgeuirge erug  erugeurhgeueruig .\nTips\n1.\trjgnrig reigeirg  eirghi : \nall erjgeriugher ergierig I er gheh erh eirghherigerg ger er ghiergier  eh egrigerig  eg . \n2.   Ewgheri ughergh erh  r   erhgerh:\ergjoi ihg iergierg iererigiergi er gieriger er gier iergpai g aei[g rhe agieg i[e I erg hhg rggergieerig ei gerh ergio ehaigneigrdrg dosg .\n3.  Jsbdiujasbfib:\npay erkgierogh erigerho ig er  erh oegiuerghe g e ir oego gerghierghe  ge rgerihgeri gegh eregh.\n"
   },
{
      "Data":1561,
      "Number":156,
      "ID":1565,
      "TypeID":15,
      "Type":"sdfg",
      "Comments":"jbgijdresbgiesugbiiergburesgbiergb breijfberiugbi iuergiuer erguiergeriu erreuguierh guierhger eu u geir er erug iug    eruhiuguiergiuguer  er ug e  eruhgeuirge erug  erugeurhgeueruig .\nTips\n1.\trjgnrig reigeirg  eirghi : \nall erjgeriugher ergierig I er gheh erh eirghherigerg ger er ghiergier  eh egrigerig  eg . \n2.   Ewgheri ughergh erh  r   erhgerh:\ergjoi ihg iergierg iererigiergi er gieriger er gier iergpai g aei[g rhe agieg i[e I erg hhg rggergieerig ei gerh ergio ehaigneigrdrg dosg .\n3.  Jsbdiujasbfib:\npay erkgierogh erigerho ig er  erh oegiuerghe g e ir oego gerghierghe  ge rgerihgeri gegh eregh.\n"
   }
]

这是复制活动的配置方式:

有人知道rest数据集是否支持jsonline数组吗?

dy2hfwbg

dy2hfwbg1#

这就是我所做的,我把你在上面粘贴的JSON。我用这个JSON作为源,并检查ADF是如何处理的。当我试图在ADF中预览数据(将JSON配置为源)时,它失败了。我认为字符“\e”出于某种原因破坏了JSON。我现在不知道为什么会发生这种情况

wnavrhmk

wnavrhmk2#

**注意:**在复制活动中使用二进制数据集时,只能在二进制数据集之间进行复制,否则将引发错误。
来源:
请求方法获取
添加附加标题Authorization : Bearer < Token >

接收器:

如果要将多个响应放入单个文件中,则会破坏JSON格式并导致JSON无效。请将文件模式更改为对象数组对象集

输出:

有关详细信息,请参阅此SO线程和MS Document

相关问题