如果我在定义contet类型中错了,请纠正我:
Content-Type: application/json; charset=utf-8
{"my_id":"975","my_a_id":"Test66","param":"4","amount":"66"}
和
Content-Type: application/x-www-form-urlencoded
my_id=123&my_a_id=Test66¶m=4&amount=66
其他内容类型可能是什么?
哪种内容类型支持RESTLet
NetSuite
服务?
我有网络服务:
POST https://some.netsuite.uri?deploy=1 HTTP/1.1
Authorization: NLAuth nlauth_account=3624292_SB3, nlauth_email=xduh31@gmail.com, nlauth_signature=Pass987654, nlauth_role=3
Accept: application/json
Content-Type: application/json; charset=utf-8
Host: rest.eu1.netsuite.com
Cookie: JSESSIONID=**************************************; lastUser=1234567_SB9_1282_3; NS_ROUTING_VERSION=LAGGING; NS_VER=2017.1.0
Content-Length: 69
Expect: 100-continue
{"my_id":"975","my_a_id":"Test66","param":"4","amount":"66"}
在URL中有类似 x-www-form-urlencoded
- ?deploy=1
https://some.netsuite.uri?deploy=1
数据是json
样式:
{"my_id":"975","my_a_id":"Test66","param":"4","amount":"66"}
upd
我得到答案,我想我应该返回 JSON
数据:
HTTP/1.1 200 OK
Date: Sat, 03 Jun 2017 06:21:46 GMT
Server: Apache
Cache-Control: No-Cache
Pragma: No-Cache
Content-Length: 41
Expires: 0
Edge-Control: no-store
X-N-OperationId: 486c2d20-099d-446b-9788-4816db59a1fd
Set-Cookie: .......................; path=/
NS_RTIMER_COMPOSITE: 1688996695:706172746E6572733030312E70726F642E6475622E6E65746C65646765722E636F6D:80
P3P: CP="CAO PSAa OUR BUS PUR"
Vary: User-Agent
Content-Type: application/json; charset=utf-8
org.mozilla.javascript.Undefined@54b896b0
但是这个答案看起来不像json吗?
一个问题可能是您的URL。您是否尝试过更改
https://some.netsuite.uri&deploy=1
to
https://some.netsuite.uri?deploy=1
编辑:
另外,您的接受标头说您正在寻找应用程序/JSON响应,是服务器返回的内容吗?
您可以在NS帮助中心找到支持的内容类型:
RESTETS支持JSON和纯文本内容类型用于输入和 输出。对于每种隆重,输出内容类型与输入相同 内容类型。
您必须在HTTP内容类型标头中设置内容类型。你可以 使用以下值指定输入/输出内容类型 龙卷运:
应用程序/json
文字/普通
如果指定除JSON或文本以外的内容类型,则415错误是 返回以下消息:
无效的内容类型。您只能使用应用程序/JSON或TEXT/PLAIN 带有雷斯特。
文档
除了Shazmodan提到的URL中的问题外,脚本ID缺失了。以下是有效的弹力网址的一个示例:
https://rest.netsuite.com/app/site/hosting/restlet.nl?deploy=1&script=1
您可以在URL中传递其他参数:
https://rest.netsuite.com/app/site/hosting/restlet.nl?deploy=1&script=1&my_id=123&my_a_id=Test66¶m=4&amount=66
或在请求主体中,如果您使用的是POST
和PUT
方法,但需要是有效的JSON。但是内容类型必须始终是application/json
或text/plain
。