为了账号安全,请及时绑定邮箱和手机立即绑定

为什么调用此 Web 服务时会收到 404 错误?

为什么调用此 Web 服务时会收到 404 错误?

绝地无双 2022-06-04 16:59:13
我需要用 Java (Java8) 调用几个 Web 服务。第一个创建与某些元数据(autoGenerateDOI(...))关联的新标识符(DOI)。第二个针对该标识符注册一个 url (registerURL(...).第一次通话成功,但是当我尝试进行第二次通话时,我收到 404 错误作为响应。我试图创建一个独立的程序来演示我在做什么(下)。谁能指出我做错了什么?一个示例输出是:DatasetUtility::registerURL():: metadata payload=<?xml version="1.0" encoding="UTF-8"?><resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.1/metadata.xsd"><identifier identifierType="DOI"></identifier><creators><creator><creatorName>Creator Name</creatorName><nameIdentifier nameIdentifierScheme="ISNI">Not available</nameIdentifier></creator></creators><titles><title>Test DOI creation</title><title titleType="Subtitle">A DataShare</title></titles><publisher>abcxyz123</publisher<publicationYear>2019</publicationYear><resourceType resourceTypeGeneral="Dataset">Dataset</resourceType></resource>Hostname: www.example.com   url:https://mds.test.datacite.org/metadata/10.17639 contentLength:701Set content length = 701metaDataConnection.getRequestMethod() = POSTResponse from server after POST:OK(10.17639/D4YJ-6075)DOI Generated:10.17639/D4YJ-6075************************************************************************************DatasetUtility::registerURL()::RegisterURL payload=*****doi=10.17639/D4YJ-6075url=https://www.example.com*****length=50但是,在命令行上使用相同的目标 url 和相同的“有效负载”调用 web 服务是成功的。curl  -X PUT -H "Content-Type: text/plain;charset=UTF-8" --user my_username:my_password --data $'doi=10.17639/D4YJ-6075\nurl=http://example.org/' https://mds.test.datacite.org/doi/10.17639/D4YJ-6075
查看完整描述

1 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

正如莫里斯佩里的评论一样,我使用了错误的请求方法。



查看完整回答
反对 回复 2022-06-04
  • 1 回答
  • 0 关注
  • 102 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号