嗨我需要與外部設備進行交互以通過http傳輸數據。我知道SuiteScript 1有限制,但SuiteScript 2又如何?有沒有辦法使用有效載荷進行HTTP請求並在2.0中回撥感謝您提前給予的幫助SuiteScript 2 Http請求回撥
1
A
回答
2
這是一個非常基本的,我有(減去在有效載荷很多額外的字段),我用它來發送NetSuite的項目到Salesforce,並然後使用Salesforce ID從響應中更新NetSuite項目。這是你想要的?
define(['N/record','N/https'],function(record,https){
function sendProductData(context){
var prodNewRecord=context.newRecord;
var internalID=prodNewRecord.id;
var productCode=prodNewRecord.getValue('itemid');
var postData={"internalID":internalID,"productCode":productCode};
postData=JSON.stringify(postData);
var header=[];
header['Content-Type']='application/json';
var apiURL='https://OurAPIURL';
try{
var response=https.post({
url:apiURL,
headers:header,
body:postData
});
var newSFID=response.body;
newSFID=newSFID.replace('\n','');
}catch(er02){
log.error('ERROR',JSON.stringify(er02));
}
if(newSFID!=''){
try{
var prodRec=record.submitFields({
type:recordType,
id:internalID,
values:{'custitem_sf_id':newSFID,'externalid':newSFID},
});
}catch(er03){
log.error('ERROR[er03]',JSON.stringify(er03));
}
}
}
return{
afterSubmit:sendProductData
}
});
*注意:如@erictgrubaugh所言,承諾是一個更具可擴展性的解決方案。這只是一個適合我們的快速例子。
2
您需要查看N/http
或N/https
模塊。每種方法都爲典型的HTTP請求類型提供方法,每種請求類型都有一個API,它會爲您的回調實現返回promise。
從NS幫助非常簡單的例子:
http.get.promise({
url: 'http://www.google.com'
})
.then(function(response){
log.debug({
title: 'Response',
details: response
});
})
.catch(function onRejected(reason) {
log.debug({
title: 'Invalid Get Request: ',
details: reason
});
})
相關問題
- 1. HTTP請求角2
- 2. 角2連續http請求
- 3. Http請求離子2
- 4. 多個HTTP請求2
- 5. HTTP請求和條件2
- 6. CakePHP和HTTP /請求2
- 7. 請求緩存的HTTP/2
- 8. Http請求不返回
- 9. HTTP/1.1和HTTP/2混合請求
- 10. http請求的HTTP請求
- 11. 不回答HTTP請求
- 12. ScriptResource.axd請求返回HTTP 302
- 13. 請求URI返回HTTP 401
- 14. Jetty在http請求中返回400請求絕對URL請求
- 15. 請求 - 隨時撥打raise_for_status
- 16. 無法發送curl的HTTP/2請求
- 17. 離子2:停止HTTP請求
- 18. 捲髮到達角2 HTTP GET請求
- 19. Angular 2 Http,Observables和遞歸請求
- 20. HTTP/2請求,但推不支持
- 21. python 2.7中的HTTP 2請求
- 22. 在Ruby中發送HTTP/2 POST請求
- 23. HTTP/2在CORS請求中工作嗎?
- 24. 與Http請求角2不beeing發送
- 25. 離子2:離線HTTP獲取請求
- 26. Flash - 動作腳本2 - HTTP請求
- 27. Angular 2中的HTTP請求方法
- 28. Angular 2中的HTTP轉換請求
- 29. 使用PHP發出HTTP/2請求
- 30. 離子2頭不被HTTP請求
非常感謝我所需要的 – jk121960
我很抱歉我應該馬上問這個問題,但這是服務器還是客戶端?因爲我必須定期從腳本運行這個,謝謝 – jk121960
這個代碼是服務器端。我有一個用戶事件腳本運行。計劃的腳本可以使用相同的基本功能。您只需循環調用,或者構建一組數據併發送。然後循環查看結果。 – W3BGUY